66 lines
1.8 KiB
JavaScript
Executable File
66 lines
1.8 KiB
JavaScript
Executable File
/*eslint strict:0*/
|
|
|
|
casper.test.begin('urls tests', 9, function(test) {
|
|
var assertURL = function(match, message) {
|
|
test.assertHttpStatus(200);
|
|
test.assertUrlMatches(match, message);
|
|
};
|
|
|
|
casper.start('tests/site/urls.html#fragment');
|
|
|
|
casper.waitForUrl(/urls.html/, function() {
|
|
assertURL('urls.html', 'Casper.start loads URL with fragment');
|
|
test.assertEqual(casper.evaluate(function() {
|
|
return location.hash;
|
|
}), '#fragment', 'location.hash equals fragment');
|
|
});
|
|
|
|
casper.then(function() {
|
|
this.clickLabel('raw unicode', 'a');
|
|
});
|
|
|
|
casper.waitForUrl(/Forlì/,
|
|
assertURL.bind(this,
|
|
'Forlì',
|
|
'Casper.getCurrentUrl() retrieves a raw unicode URL'
|
|
));
|
|
|
|
casper.then(function() {
|
|
this.clickLabel('escaped', 'a');
|
|
});
|
|
|
|
casper.waitForUrl(/Farlì/,
|
|
assertURL.bind(this,
|
|
'Farlì',
|
|
'Casper.getCurrentUrl() retrieves an escaped URL'
|
|
));
|
|
|
|
casper.then(function() {
|
|
this.clickLabel('uri encoded', 'a');
|
|
});
|
|
|
|
casper.waitForUrl(/Furlì/,
|
|
assertURL.bind(this,
|
|
'Furlì',
|
|
'Casper.getCurrentUrl() retrieves a decoded URL'
|
|
));
|
|
|
|
casper.run(function() {
|
|
test.done();
|
|
});
|
|
});
|
|
|
|
// https://github.com/casperjs/casperjs/issues/841
|
|
casper.test.begin('url tests with javascript disabled', 1, function(test) {
|
|
casper.options.pageSettings.javascriptEnabled = false;
|
|
casper.start('tests/site/urls.html');
|
|
casper.then(function() {
|
|
test.assertMatch(this.getCurrentUrl(), /urls\.html$/,
|
|
'Casper.getCurrentUrl() can work, with javascript disabled');
|
|
});
|
|
casper.run(function() {
|
|
test.done();
|
|
casper.options.pageSettings.javascriptEnabled = true;
|
|
});
|
|
});
|