2016-10-26 14:46:32 +00:00
|
|
|
// A custom Nightwatch assertion.
|
|
|
|
// the name of the method is the filename.
|
|
|
|
// can be used in tests like this:
|
|
|
|
//
|
|
|
|
// browser.assert.elementCount(selector, count)
|
|
|
|
//
|
|
|
|
// for how to write 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) {
|
2022-07-31 09:35:48 +00:00
|
|
|
const self = this
|
2016-10-26 14:46:32 +00:00
|
|
|
return this.api.execute(function (selector) {
|
|
|
|
return document.querySelectorAll(selector).length
|
|
|
|
}, [selector], function (res) {
|
|
|
|
cb.call(self, res)
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|