zulip/frontend_tests/casperjs/samples/multirun.js

60 lines
1.4 KiB
JavaScript

/*jshint strict:false*/
/*global CasperError console phantom require*/
var casper = require("casper").create({
verbose: true
});
var countLinks = function() {
return document.querySelectorAll('a').length;
};
var suites = [
function() {
this.echo("Suite 1");
this.start("http://google.com/", function() {
this.echo("Page title: " + (this.getTitle()));
});
this.then(function() {
this.echo((this.evaluate(countLinks)) + " links");
});
}, function() {
this.echo("Suite 2");
this.start("http://yahoo.com/", function() {
this.echo("Page title: " + (this.getTitle()));
});
this.then(function() {
this.echo((this.evaluate(countLinks)) + " links");
});
}, function() {
this.echo("Suite 3");
this.start("http://bing.com/", function() {
this.echo("Page title: " + (this.getTitle()));
});
this.then(function() {
this.echo((this.evaluate(countLinks)) + " links");
});
}
];
casper.start();
casper.then(function() {
this.echo("Starting");
});
var currentSuite = 0;
var check = function() {
if (suites[currentSuite]) {
suites[currentSuite].call(this);
currentSuite++;
casper.run(check);
} else {
this.echo("All done.");
this.exit();
}
};
casper.run(check);