This rather large commit refactors the build system to solve a number of problems: - Object literal types are now declared in just one place - There are no more circular dependencies - There is no need for concealed subclasses in build-standalone mode When building in standalone mode, you need to include the source in build/src/external. This declares object literal types as externs so that their properties are not renamed. When building with the application, you need to include the source in build/src/internal. This declares object literal types as typedefs so that their properties can be renamed and removed. Note also that ol.MapOptions has been merged into ol.Map, with some renaming.
129 lines
4.6 KiB
HTML
129 lines
4.6 KiB
HTML
<!DOCTYPE html>
|
|
|
|
<!-- FIXME console reporter output does not include name of top-level describe -->
|
|
<!-- FIXME console reporter requires window.console_reporter. This is to be
|
|
reported to phantom-jasmine -->
|
|
|
|
|
|
<!--
|
|
|
|
Note: we assume that Plovr is available at <hostname>:9810, where
|
|
<hostname> is the name of the host used for loading that page. This
|
|
can be overriden by setting plovr_host in the query string. E.g.
|
|
|
|
http://localhost/ol3/test/ol.html?plovr_host=192.168.1.2:9810
|
|
-->
|
|
|
|
|
|
<html>
|
|
<head>
|
|
<title>OL Spec Runner</title>
|
|
|
|
<link rel="shortcut icon" type="image/png" href="jasmine-1.2.0/jasmine_favicon.png">
|
|
<link rel="stylesheet" type="text/css" href="jasmine-1.2.0/jasmine.css">
|
|
<script type="text/javascript" src="jasmine-1.2.0/jasmine.js"></script>
|
|
<script type="text/javascript" src="jasmine-1.2.0/jasmine-html.js"></script>
|
|
<script type="text/javascript" src="phantom-jasmine/console-runner.js"></script>
|
|
<script type="text/javascript" src="jasmine-extensions.js"></script>
|
|
|
|
<script type="text/javascript">
|
|
|
|
(function(doc, l) {
|
|
|
|
var regexResult = /[\\?&]plovr_host=([^&#]*)/.exec(l.href);
|
|
var plovrHost = (regexResult && regexResult[1]) ?
|
|
decodeURIComponent(regexResult[1]) : l.hostname ?
|
|
l.hostname + ':9810' : 'localhost:9810';
|
|
|
|
// Create the script tag which includes the derived variables from above
|
|
var script = '<sc' + 'ript type="text/javascript" '
|
|
+ 'src="http://' + plovrHost + '/compile?id=ol&mode=RAW">'
|
|
+ '</scr' + 'ipt>';
|
|
|
|
// this function will fix the links of the result to also include
|
|
// the once defined URL Parametrs passed to the testsuite.
|
|
function fixLinks() {
|
|
if (doc.getElementsByTagName) {
|
|
var candidates = doc.getElementsByTagName('a'),
|
|
link,
|
|
hrefExpression = /\?spec/,
|
|
i = 0, len = candidates.length;
|
|
for(; i < len; i++){
|
|
link = candidates[i];
|
|
if (hrefExpression.test(link.href)) {
|
|
link.href += '&plov_host=' + encodeURIComponent(plovrHost);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// write out the script-tag to load the compiled result
|
|
doc.write(script);
|
|
|
|
// overwrite jasmines finishCallback to fix the links
|
|
jasmine.Runner.prototype.finishCallback = function() {
|
|
jasmine.getEnv().reporter.reportRunnerResults(this);
|
|
fixLinks();
|
|
};
|
|
})(document, location);
|
|
|
|
</script>
|
|
|
|
<!-- include spec files here... -->
|
|
<script type="text/javascript" src="spec/ol/array.test.js"></script>
|
|
<script type="text/javascript" src="spec/ol/collection.test.js"></script>
|
|
<script type="text/javascript" src="spec/ol/extent.test.js"></script>
|
|
<script type="text/javascript" src="spec/ol/object.test.js"></script>
|
|
<script type="text/javascript" src="spec/ol/tilecoord.test.js"></script>
|
|
<script type="text/javascript" src="spec/ol/tilegrid.test.js"></script>
|
|
<script type="text/javascript" src="spec/ol/map.test.js"></script>
|
|
<script type="text/javascript" src="spec/ol/projection.test.js"></script>
|
|
<script type="text/javascript" src="spec/ol/rectangle.test.js"></script>
|
|
<script type="text/javascript" src="spec/ol/tilerange.test.js"></script>
|
|
<script type="text/javascript" src="spec/ol/tileurlfunction.test.js"></script>
|
|
<script type="text/javascript" src="spec/ol/resolutionconstraint.test.js"></script>
|
|
<script type="text/javascript" src="spec/ol/source/xyz.test.js"></script>
|
|
|
|
<script type="text/javascript">
|
|
|
|
(function() {
|
|
var jasmineEnv = jasmine.getEnv();
|
|
jasmineEnv.updateInterval = 1000;
|
|
|
|
// HTML reporter
|
|
|
|
var htmlReporter = new jasmine.HtmlReporter();
|
|
jasmineEnv.addReporter(htmlReporter);
|
|
jasmineEnv.specFilter = function(spec) {
|
|
return htmlReporter.specFilter(spec);
|
|
};
|
|
|
|
// Console reporter (for headless testing)
|
|
|
|
var consoleReporter = new jasmine.ConsoleReporter();
|
|
jasmineEnv.addReporter(consoleReporter);
|
|
// The run_jasmine_test.coffee script (from phantom-jasmine)
|
|
// assumes that the console reporter instance is available
|
|
// in the global namespace object as "console_reporter".
|
|
// Stupid.
|
|
window.console_reporter = consoleReporter;
|
|
|
|
var currentWindowOnload = window.onload;
|
|
|
|
window.onload = function() {
|
|
if (currentWindowOnload) {
|
|
currentWindowOnload();
|
|
}
|
|
jasmineEnv.execute();
|
|
};
|
|
|
|
})();
|
|
|
|
</script>
|
|
|
|
</head>
|
|
|
|
<body>
|
|
</body>
|
|
</html>
|