Merge "tests: Fix broken assertion in ApiQueryAllPagesTest"
[lhc/web/wiklou.git] / tests / selenium / specs / user.js
1 const assert = require( 'assert' );
2 const CreateAccountPage = require( '../pageobjects/createaccount.page' );
3 const PreferencesPage = require( '../pageobjects/preferences.page' );
4 const UserLoginPage = require( 'wdio-mediawiki/LoginPage' );
5 const Api = require( 'wdio-mediawiki/Api' );
6 const Util = require( 'wdio-mediawiki/Util' );
7
8 describe( 'User', function () {
9 let password, username;
10
11 beforeEach( function () {
12 browser.deleteAllCookies();
13 username = Util.getTestString( 'User-' );
14 password = Util.getTestString();
15 } );
16
17 it( 'should be able to create account', function () {
18 // create
19 CreateAccountPage.createAccount( username, password );
20
21 // check
22 assert.strictEqual( CreateAccountPage.heading.getText(), `Welcome, ${username}!` );
23 } );
24
25 it( 'should be able to log in @daily', function () {
26 // create
27 browser.call( function () {
28 return Api.createAccount( username, password );
29 } );
30
31 // log in
32 UserLoginPage.login( username, password );
33
34 // check
35 assert.strictEqual( UserLoginPage.userPage.getText(), username );
36 } );
37
38 // Disabled due to flakiness (T199446)
39 it.skip( 'should be able to change preferences', function () {
40 var realName = Util.getTestString();
41
42 // create
43 browser.call( function () {
44 return Api.createAccount( username, password );
45 } );
46
47 // log in
48 UserLoginPage.login( username, password );
49
50 // change
51 PreferencesPage.changeRealName( realName );
52
53 // check
54 assert.strictEqual( PreferencesPage.realName.getValue(), realName );
55 } );
56 } );