jasmine puts the status message in a different class on failure
[mkws-moved-to-github.git] / test / phantom / evaluate.js
index 52e044d..0cf56f0 100644 (file)
@@ -26,7 +26,10 @@ page.viewportSize = {
 
 // 0: silent, 1: some infos,  2: display console.log() output
 var debug = 2;
-
+if (typeof system.env['DEBUG'] != 'undefined' && parseInt(system.env['DEBUG']) != NaN) {
+    debug = system.env['DEBUG'];
+    if (debug > 0) console.log("reset debug level to: " + debug);
+}
 
 /************************/
 
@@ -73,12 +76,18 @@ page.onAlert = function (msg) {
     console.log("Alert: " + msg);
 };
 
+// display HTTP errors
+page.onResourceError = function (resourceError) {
+    // console.log('phantomjs error code: ' + resourceError.errorCode);
+    console.log(resourceError.errorString);
+    phantom.exit(3);
+};
 
 page.open(url, function (status) {
     if (debug >= 1) console.log("fetch " + url + " with status: " + status);
 
     if (status != 'success') {
-        console.log("Failed to fetch page, give up");
+        console.log("Failed to fetch page, give up. Network error?");
         phantom.exit(1);
     }
 
@@ -90,11 +99,13 @@ page.open(url, function (status) {
             if (!window || !window.$ || !window.mkws) {
                 return false;
             } else {
+                var passing = window.$(".passingAlert").text() || window.$(".failingAlert").text();
+
                 return {
                     mkws: window.mkws,
                     html: window.$("html").html(),
                     duration: window.$(".duration").text(),
-                    passing: window.$(".passingAlert").text()
+                    passing: passing
                 };
             }
         })
@@ -103,6 +114,7 @@ page.open(url, function (status) {
     function (result) {
         if (debug < 1) return;
 
+        console.log("");
         console.log("MKWS tests are successfully done in " + result.time / 1000 + " seconds. Hooray!");
         console.log("jasmine duration: " + result.duration);
         console.log("jasmine passing: " + result.passing);