selenium: undo page
Add basic undo page object and test showing a previous edit can be undone. Bug: T201901 Change-Id: Idc1b3889abc6e655032bc1576f1b9d591abd6c8d
This commit is contained in:
parent
0a0d5cb7f7
commit
32c36f0e73
2 changed files with 37 additions and 0 deletions
14
tests/selenium/pageobjects/undo.page.js
Normal file
14
tests/selenium/pageobjects/undo.page.js
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
const Page = require( 'wdio-mediawiki/Page' );
|
||||
|
||||
class UndoPage extends Page {
|
||||
|
||||
get save() { return browser.element( '#wpSave' ); }
|
||||
|
||||
undo( title, previousRev, undoRev ) {
|
||||
super.openTitle( title, { action: 'edit', undoafter: previousRev, undo: undoRev } );
|
||||
this.save.click();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
module.exports = new UndoPage();
|
||||
|
|
@ -4,6 +4,7 @@ const assert = require( 'assert' ),
|
|||
RestorePage = require( '../pageobjects/restore.page' ),
|
||||
EditPage = require( '../pageobjects/edit.page' ),
|
||||
HistoryPage = require( '../pageobjects/history.page' ),
|
||||
UndoPage = require( '../pageobjects/undo.page' ),
|
||||
UserLoginPage = require( '../pageobjects/userlogin.page' ),
|
||||
Util = require( 'wdio-mediawiki/Util' );
|
||||
|
||||
|
|
@ -118,4 +119,26 @@ describe( 'Page', function () {
|
|||
// check
|
||||
assert.strictEqual( RestorePage.displayedContent.getText(), name + ' has been restored\nConsult the deletion log for a record of recent deletions and restorations.' );
|
||||
} );
|
||||
|
||||
it( 'should be undoable', function () {
|
||||
// create
|
||||
browser.call( function () {
|
||||
return Api.edit( name, content );
|
||||
} );
|
||||
|
||||
// edit
|
||||
let previousRev, undoRev;
|
||||
browser.call( function () {
|
||||
return Api.edit( name, Util.getTestString( 'editContent-' ) )
|
||||
.then( ( response ) => {
|
||||
previousRev = response.edit.oldrevid;
|
||||
undoRev = response.edit.newrevid;
|
||||
} );
|
||||
} );
|
||||
|
||||
UndoPage.undo( name, previousRev, undoRev );
|
||||
|
||||
assert.strictEqual( EditPage.displayedContent.getText(), content );
|
||||
} );
|
||||
|
||||
} );
|
||||
|
|
|
|||
Loading…
Reference in a new issue