openForEditing: Wait until CodeMirror is fully disabled
Bug: T324879 Change-Id: I2a86a37fe2853890742bea2e7180f7d6c5f9304c
This commit is contained in:
parent
773d3b01b3
commit
a6d3e64ae2
1 changed files with 13 additions and 1 deletions
|
|
@ -1,6 +1,7 @@
|
|||
'use strict';
|
||||
|
||||
const Page = require( 'wdio-mediawiki/Page' );
|
||||
const Page = require( 'wdio-mediawiki/Page' ),
|
||||
Util = require( 'wdio-mediawiki/Util' );
|
||||
|
||||
class EditPage extends Page {
|
||||
get content() { return $( '#wpTextbox1' ); }
|
||||
|
|
@ -13,9 +14,20 @@ class EditPage extends Page {
|
|||
async openForEditing( title ) {
|
||||
await super.openTitle( title, { action: 'submit', vehidebetadialog: 1, hidewelcomedialog: 1 } );
|
||||
// Compatibility with CodeMirror extension (T324879)
|
||||
Util.waitForModuleState( 'mediawiki.base' );
|
||||
const hasToolbar = await this.save.isExisting() && await browser.execute( () => {
|
||||
return mw.loader.getState( 'ext.wikiEditor' ) !== null;
|
||||
} );
|
||||
if ( !hasToolbar ) {
|
||||
return;
|
||||
}
|
||||
await $( '#wikiEditor-ui-toolbar' ).waitForDisplayed();
|
||||
const cmButton = $( '.mw-editbutton-codemirror-active' );
|
||||
if ( await cmButton.isExisting() ) {
|
||||
await cmButton.click();
|
||||
await browser.waitUntil( async () => {
|
||||
return !( await cmButton.getAttribute( 'class' ) ).includes( 'mw-editbutton-codemirror-active' );
|
||||
} );
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue