mirror of
https://github.com/zulip/zulip.git
synced 2025-11-18 04:43:58 +00:00
Move frontend tests out of zerver/tests/.
This fixes an unfortunate bug where the backend tests in zerver/tests.py were not being run automatically, and also makes these a bit easier to find.
This commit is contained in:
68
frontend_tests/casperjs/samples/googlematch.js
Normal file
68
frontend_tests/casperjs/samples/googlematch.js
Normal file
@@ -0,0 +1,68 @@
|
||||
/*jshint strict:false*/
|
||||
/*global CasperError console phantom require*/
|
||||
|
||||
/**
|
||||
* Takes provided terms passed as arguments and query google for the number of
|
||||
* estimated results each have.
|
||||
*
|
||||
* Usage:
|
||||
* $ casperjs googlematch.js nicolas chuck borris
|
||||
* nicolas: 69600000
|
||||
* chuck: 49500000
|
||||
* borris: 2370000
|
||||
* winner is "nicolas" with 69600000 results
|
||||
*/
|
||||
|
||||
var casper = require("casper").create({
|
||||
verbose: true
|
||||
});
|
||||
|
||||
casper.fetchScore = function() {
|
||||
return this.evaluate(function() {
|
||||
var result = __utils__.findOne('#resultStats').innerText;
|
||||
return parseInt(/Environ ([0-9\s]{1,}).*/.exec(result)[1].replace(/\s/g, ''), 10);
|
||||
});
|
||||
};
|
||||
|
||||
var terms = casper.cli.args;
|
||||
|
||||
if (terms.length < 2) {
|
||||
casper
|
||||
.echo("Usage: $ casperjs googlematch.js term1 term2 [term3]...")
|
||||
.exit(1)
|
||||
;
|
||||
}
|
||||
|
||||
var scores = [];
|
||||
|
||||
casper.echo("Let the match begin between \"" + (terms.join('", "')) + "\"!");
|
||||
|
||||
casper.start("http://google.fr/");
|
||||
|
||||
casper.each(terms, function(casper, term, i) {
|
||||
this.echo('Fecthing score for ' + term);
|
||||
this.then(function() {
|
||||
this.fill('form[action="/search"]', {q: term}, true);
|
||||
});
|
||||
this.then(function() {
|
||||
var score = this.fetchScore();
|
||||
scores.push({
|
||||
term: term,
|
||||
score: score
|
||||
});
|
||||
this.echo(term + ': ' + score);
|
||||
});
|
||||
});
|
||||
|
||||
casper.run(function() {
|
||||
if (scores.length === 0) {
|
||||
this.echo("No result found");
|
||||
} else {
|
||||
scores.sort(function(a, b) {
|
||||
return b.score - a.score;
|
||||
});
|
||||
var winner = scores[0];
|
||||
this.echo("Winner is \"" + winner.term + "\" with " + winner.score + " results");
|
||||
}
|
||||
this.exit();
|
||||
});
|
||||
Reference in New Issue
Block a user