1 const assert
= require( 'assert' ),
2 CreateAccountPage
= require( '../pageobjects/createaccount.page' ),
3 PreferencesPage
= require( '../pageobjects/preferences.page' ),
4 UserLoginPage
= require( 'wdio-mediawiki/LoginPage' ),
5 Api
= require( 'wdio-mediawiki/Api' ),
6 Util
= require( 'wdio-mediawiki/Util' );
8 describe( 'User', function () {
13 // disable VisualEditor welcome dialog
15 browser
.localStorage( 'POST', { key
: 've-beta-welcome-dialog', value
: '1' } );
18 beforeEach( function () {
19 browser
.deleteCookie();
20 username
= Util
.getTestString( 'User-' );
21 password
= Util
.getTestString();
24 it( 'should be able to create account', function () {
26 CreateAccountPage
.createAccount( username
, password
);
29 assert
.strictEqual( CreateAccountPage
.heading
.getText(), `Welcome, ${username}!` );
32 it( 'should be able to log in', function () {
34 browser
.call( function () {
35 return Api
.createAccount( username
, password
);
39 UserLoginPage
.login( username
, password
);
42 assert
.strictEqual( UserLoginPage
.userPage
.getText(), username
);
45 it( 'should be able to change preferences', function () {
46 var realName
= Util
.getTestString();
49 browser
.call( function () {
50 return Api
.createAccount( username
, password
);
54 UserLoginPage
.login( username
, password
);
57 PreferencesPage
.changeRealName( realName
);
60 assert
.strictEqual( PreferencesPage
.realName
.getValue(), realName
);