Skip to content
This repository has been archived by the owner on Jun 19, 2020. It is now read-only.

Commit

Permalink
Merge pull request #266 from starlocke/fix_tester_module
Browse files Browse the repository at this point in the history
Fix Tester module and its selftest
  • Loading branch information
n1k0 committed Nov 2, 2012
2 parents 8c798c7 + 5ef5a71 commit 07344b3
Show file tree
Hide file tree
Showing 2 changed files with 58 additions and 4 deletions.
4 changes: 2 additions & 2 deletions modules/tester.js
Expand Up @@ -267,7 +267,7 @@ Tester.prototype.assertField = function assertField(inputName, expected, messag
* @param String message Test description
* @return Object An assertion result object
*/
Tester.prototype.assertExists = Tester.prototype.assertExist = this.assertSelectorExists = Tester.prototype.assertSelectorExist = function assertExists(selector, message) {
Tester.prototype.assertExists = Tester.prototype.assertExist = Tester.prototype.assertSelectorExists = Tester.prototype.assertSelectorExist = function assertExists(selector, message) {
"use strict";
return this.assert(this.casper.exists(selector), message, {
type: "assertExists",
Expand Down Expand Up @@ -382,7 +382,7 @@ Tester.prototype.assertNotVisible = Tester.prototype.assertInvisible = function
* @param String message Test description
* @return Object An assertion result object
*/
Tester.prototype.assertRaises = Tester.prototype.assertRaise = this.assertThrows = function assertRaises(fn, args, message) {
Tester.prototype.assertRaises = Tester.prototype.assertRaise = Tester.prototype.assertThrows = function assertRaises(fn, args, message) {
"use strict";
var context = {
type: "assertRaises",
Expand Down
58 changes: 56 additions & 2 deletions tests/suites/tester.js
Expand Up @@ -25,23 +25,30 @@ casper.thenOpen('tests/site/index.html', function() {
t.comment('Tester.assertTextExists()');
t.assertTextExists('form', 'Tester.assertTextExists() checks that page body contains text');

t.comment('Tester.assertTextExist()');
t.assertTextExist('form', 'Tester.assertTextExist() checks that page body contains text [alias]');

t.comment('Tester.assertSelectorHasText()');
t.assertSelectorHasText('h1', 'Title', 'Tester.assertSelectorHasText() works as expected');

t.comment('Tester.assertSelectorDoesntHaveText()');
t.assertSelectorDoesntHaveText('h1', 'Subtitle', 'Tester.assertSelectorDoesntHaveText() works as expected');
});

casper.then(function() {
t.comment('Tester.assert()');
t.assert(true, 'Tester.assert() works as expected');

t.comment('Tester.assertTrue()');
t.assertTrue(true, 'Tester.assertTrue() works as expected [alias]');

t.comment('Tester.assertNot()');
t.assertNot(false, 'Tester.assertNot() works as expected');

t.comment('Tester.assertEquals()');
t.assertEquals(true, true, 'Tester.assertEquals() works as expected');

t.comment('Tester.assertEqual()');
t.assertEqual(true, true, 'Tester.assertEqual() works as expected [alias]');

t.comment('Tester.assertNotEquals()');
t.assertNotEquals(true, false, 'Tester.assertNotEquals() works as expected');

Expand All @@ -50,49 +57,96 @@ casper.then(function() {
return true;
}, 'Tester.assertEval() works as expected');

t.comment('Tester.assertEvaluate()');
t.assertEvaluate(function() {
return true;
}, 'Tester.assertEvaluate() works as expected [alias]');

t.comment('Tester.assertEvalEquals()');
t.assertEvalEquals(function() {
return 42;
}, 42, 'Tester.assertEvalEquals() works as expected');

t.comment('Tester.assertEvalEqual()');
t.assertEvalEqual(function() {
return 42;
}, 42, 'Tester.assertEvalEqual() works as expected [alias]');

t.comment('Tester.assertExists()');
t.assertExists('body', 'Tester.assertExists() works as expected');

t.comment('Tester.assertExist()');
t.assertExist('body', 'Tester.assertExist() works as expected [alias]');

t.comment('Tester.assertSelectorExists()');
t.assertSelectorExists('body', 'Tester.assertSelectorExists() works as expected [alias]');

t.comment('Tester.assertSelectorExists()');
t.assertSelectorExist('body', 'Tester.assertSelectorExist() works as expected [alias]');

t.comment('Tester.assertDoesntExist()');
t.assertDoesntExist('foobar', 'Tester.assertDoesntExist() works as expected');

t.comment('Tester.assertNotExist()');
t.assertDoesntExist('foobar', 'Tester.assertNotExist() works as expected [alias]');

t.comment('Tester.assertHttpStatus()');
// using file:// protocol, HTTP status is always null
t.assertHttpStatus(200, 'Tester.assertHttpStatus() works as expected');

t.comment('Tester.assertMatch()');
t.assertMatch("the lazy dog", /lazy/, 'Tester.assertMatch() works as expected');

t.comment('Tester.assertMatches()');
t.assertMatches("the lazy dog", /lazy/, 'Tester.assertMatches() works as expected [alias]');

t.comment('Tester.assertRaises()');
t.assertRaises(function() {
throw new Error('plop');
}, [], 'Tester.assertRaises() works as expected');

t.comment('Tester.assertRaise()');
t.assertRaise(function() {
throw new Error('plop');
}, [], 'Tester.assertRaise() works as expected [alias]');

t.comment('Tester.assertThrows()');
t.assertThrows(function() {
throw new Error('plop');
}, [], 'Tester.assertThrows() works as expected [alias]');

t.comment('Tester.assertResourceExists()');
t.assertResourceExists(/index\.html/, 'Tester.assertResourceExists() works as expected');

t.comment('Tester.assertResourceExist()');
t.assertResourceExist(/index\.html/, 'Tester.assertResourceExist() works as expected [alias]');

t.comment('Tester.assertTitle()');
t.assertTitle('CasperJS test index', 'Tester.assertTitle() works as expected');

t.comment('Tester.assertTitleMatch()');
t.assertTitleMatch(/test index/, 'Tester.assertTitleMatch() works as expected');

t.comment('Tester.assertTitleMatches()');
t.assertTitleMatches(/test index/, 'Tester.assertTitleMatches() works as expected [alias]');

t.comment('Tester.assertType()');
t.assertType("plop", "string", "Tester.assertType() works as expected");

t.comment('Tester.assertUrlMatch()');
t.assertUrlMatch(/index\.html$/, "Tester.assertUrlMatch() works as expected");

t.comment('Tester.assertUrlMatches()');
t.assertUrlMatches(/index\.html$/, "Tester.assertUrlMatches() works as expected [alias]");

t.comment('Tester.assertVisible()');
t.assertVisible('img', 'Tester.assertVisible() works as expected');

t.comment('Tester.assertNotVisible()');
t.assertNotVisible('p#hidden', 'Tester.assertNotVisible() works as expected');

t.comment('Tester.assertInvisible()');
t.assertInvisible('p#hidden', 'Tester.assertInvisible() works as expected [alias]');
});

casper.thenOpen('tests/site/form.html', function() {
Expand Down

0 comments on commit 07344b3

Please sign in to comment.