Files
openlayers/test/ol.html
2013-01-18 21:02:09 +01:00

135 lines
4.9 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-all&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/color.test.js"></script>
<script type="text/javascript" src="spec/ol/extent.test.js"></script>
<script type="text/javascript" src="spec/ol/map.test.js"></script>
<script type="text/javascript" src="spec/ol/object.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/resolutionconstraint.test.js"></script>
<script type="text/javascript" src="spec/ol/view2d.test.js"></script>
<script type="text/javascript" src="spec/ol/layer/layer.test.js"></script>
<script type="text/javascript" src="spec/ol/source/xyz.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/tilequeue.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/control/control.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>
<div id="map"></div>
</body>
</html>