2 const Page
= require( './page' );
4 class EditPage
extends Page
{
6 get content() { return browser
.element( '#wpTextbox1' ); }
7 get displayedContent() { return browser
.element( '#mw-content-text' ); }
8 get heading() { return browser
.element( '#firstHeading' ); }
9 get save() { return browser
.element( '#wpSave' ); }
11 openForEditing( name
) {
12 super.open( name
+ '&action=edit' );
15 edit( name
, content
) {
16 this.openForEditing( name
);
17 this.content
.setValue( content
);
21 apiEdit( name
, content
) {
22 const url
= require( 'url' ), // https://nodejs.org/docs/latest/api/url.html
23 baseUrl
= url
.parse( browser
.options
.baseUrl
), // http://webdriver.io/guide/testrunner/browserobject.html
24 Bot
= require( 'nodemw' ), // https://github.com/macbre/nodemw
26 protocol
: baseUrl
.protocol
,
27 server
: baseUrl
.hostname
,
33 return new Promise( ( resolve
, reject
) => {
34 client
.edit( name
, content
, `Created page with "${content}"`, function ( err
) {
44 module
.exports
= new EditPage();