--- /dev/null
+var page = require('webpage').create();
+
+page.open("http://localhost:3000/test/index.html", function (status) {
+ if (status != "success") {
+ console.log("page couldn't be loaded successfully");
+ phantom.exit(1);
+ }
+ waitFor(function () {
+ return page.evaluate(function () {
+ var output = document.getElementById('status');
+ if (!output) { return false; }
+ return (/^(\d+ failures?|all passed)/i).test(output.innerText);
+ });
+ }, function () {
+ var failed = page.evaluate(function () { return window.failed; });
+ var output = page.evaluate(function () {
+ return document.getElementById('output').innerText + "\n" +
+ document.getElementById('status').innerText;
+ });
+ console.log(output);
+ phantom.exit(failed > 0 ? 1 : 0);
+ });
+});
+
+function waitFor (test, cb) {
+ if (test()) {
+ cb();
+ } else {
+ setTimeout(function () { waitFor(test, cb); }, 250);
+ }
+}