UNPKG

zuul

Version:
51 lines (43 loc) 1.36 kB
// THIS IS A PHANTOMJS SCRIPT FILE // // see PhantomBrowser.js for use // var page = require('webpage').create(); var system = require('system'); var url = system.args[1]; var systemMessages = []; phantom.onError = function(msg, trace) { systemMessages.push({ type: 'exception', message: msg, trace: trace }); }; page.onError = function(msg, trace) { systemMessages.push({ type: 'exception', message: msg, trace: trace }); }; page.open(url, function(status) { var msg_tid = setInterval(function() { var msgs = page.evaluate(function() { return window.zuul_msg_bus && window.zuul_msg_bus.splice(0, window.zuul_msg_bus.length); }) || []; var messages = msgs.concat(systemMessages.splice(0, systemMessages.length)); messages.forEach(function(msg) { console.log(JSON.stringify(msg)); if (msg.type === 'exception') { console.error(msg.message); console.trace(msg.trace); return setTimeout(function() { phantom.exit(1); }); } if (msg.type === 'done') { return setTimeout(function() { phantom.exit(msg.passed ? 0 : 1); }); } }); }, 100); });