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 @daily', function () {
34 browser
.call( function () {
35 return Api
.createAccount( username
, password
);
39 UserLoginPage
.login( username
, password
);
42 assert
.strictEqual( UserLoginPage
.userPage
.getText(), username
);
45 // Disabled due to flakiness (T199446)
46 it
.skip( 'should be able to change preferences', function () {
47 var realName
= Util
.getTestString();
50 browser
.call( function () {
51 return Api
.createAccount( username
, password
);
55 UserLoginPage
.login( username
, password
);
58 PreferencesPage
.changeRealName( realName
);
61 assert
.strictEqual( PreferencesPage
.realName
.getValue(), realName
);