Using object composition instead of class inheritance for page objects
This commit is contained in:
parent
f106cd2850
commit
c3e9781dc4
6 changed files with 60 additions and 80 deletions
|
@ -1,11 +1,15 @@
|
|||
'use strict';
|
||||
|
||||
const Page = require('./page');
|
||||
const page = require('./page');
|
||||
|
||||
class Flash extends Page {
|
||||
module.exports = driver => Object.assign(page(driver), {
|
||||
elementToWaitFor: 'alert',
|
||||
elements: {
|
||||
alert: 'div.alert:not(.js-warning)'
|
||||
},
|
||||
getText() {
|
||||
return this.element('alert').getText();
|
||||
}
|
||||
},
|
||||
clear() {
|
||||
return this.driver.executeScript(`
|
||||
var elements = document.getElementsByClassName('alert');
|
||||
|
@ -14,11 +18,4 @@ class Flash extends Page {
|
|||
}
|
||||
`);
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = driver => new Flash(driver, {
|
||||
elementToWaitFor: 'alert',
|
||||
elements: {
|
||||
alert: 'div.alert:not(.js-warning)'
|
||||
}
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue