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' );
7 describe( 'User', function () {
12 // disable VisualEditor welcome dialog
14 browser
.localStorage( 'POST', { key
: 've-beta-welcome-dialog', value
: '1' } );
17 beforeEach( function () {
18 browser
.deleteCookie();
19 username
= `User-${Math.random().toString()}`;
20 password
= Math
.random().toString();
23 it( 'should be able to create account', function () {
25 CreateAccountPage
.createAccount( username
, password
);
28 assert
.equal( CreateAccountPage
.heading
.getText(), `Welcome, ${username}!` );
31 it( 'should be able to log in', function () {
33 browser
.call( function () {
34 return Api
.createAccount( username
, password
);
38 UserLoginPage
.login( username
, password
);
41 assert
.equal( UserLoginPage
.userPage
.getText(), username
);
44 it( 'should be able to change preferences', function () {
45 var realName
= Math
.random().toString();
48 browser
.call( function () {
49 return Api
.createAccount( username
, password
);
53 UserLoginPage
.login( username
, password
);
56 PreferencesPage
.changeRealName( realName
);
59 assert
.equal( PreferencesPage
.realName
.getValue(), realName
);