28 lines
765 B
JavaScript
28 lines
765 B
JavaScript
|
// A custom Nightwatch assertion.
|
||
|
// The assertion name is the filename.
|
||
|
// Example usage:
|
||
|
//
|
||
|
// browser.assert.elementCount(selector, count)
|
||
|
//
|
||
|
// For more information on custom assertions see:
|
||
|
// http://nightwatchjs.org/guide#writing-custom-assertions
|
||
|
|
||
|
exports.assertion = function (selector, count) {
|
||
|
this.message = 'Testing if element <' + selector + '> has count: ' + count
|
||
|
this.expected = count
|
||
|
this.pass = function (val) {
|
||
|
return val === this.expected
|
||
|
}
|
||
|
this.value = function (res) {
|
||
|
return res.value
|
||
|
}
|
||
|
this.command = function (cb) {
|
||
|
var self = this
|
||
|
return this.api.execute(function (selector) {
|
||
|
return document.querySelectorAll(selector).length
|
||
|
}, [selector], function (res) {
|
||
|
cb.call(self, res)
|
||
|
})
|
||
|
}
|
||
|
}
|