Merge "selenium: add new message banner test to user spec"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Mon, 29 Jan 2018 11:53:46 +0000 (11:53 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Mon, 29 Jan 2018 11:53:46 +0000 (11:53 +0000)
tests/selenium/pageobjects/usermessage.page.js [new file with mode: 0644]
tests/selenium/specs/user.js

diff --git a/tests/selenium/pageobjects/usermessage.page.js b/tests/selenium/pageobjects/usermessage.page.js
new file mode 100644 (file)
index 0000000..7faf347
--- /dev/null
@@ -0,0 +1,7 @@
+'use strict';
+const Page = require( './page' );
+
+class UserMessagePage extends Page {
+       get usermessage() { return browser.element( 'div.usermessage' ); }
+}
+module.exports = new UserMessagePage();
index 3f3872d..102acd6 100644 (file)
@@ -2,7 +2,9 @@
 const assert = require( 'assert' ),
        CreateAccountPage = require( '../pageobjects/createaccount.page' ),
        PreferencesPage = require( '../pageobjects/preferences.page' ),
-       UserLoginPage = require( '../pageobjects/userlogin.page' );
+       UserLoginPage = require( '../pageobjects/userlogin.page' ),
+       UserMessagePage = require( '../pageobjects/usermessage.page' ),
+       EditPage = require( '../pageobjects/edit.page' );
 
 describe( 'User', function () {
 
@@ -66,4 +68,24 @@ describe( 'User', function () {
 
        } );
 
+       it( 'should be able to view new message banner', function () {
+
+               // create user
+               browser.call( function () {
+                       return CreateAccountPage.apiCreateAccount( username, password );
+               } );
+
+               // create talk page with content
+               browser.call( function () {
+                       return EditPage.apiEdit( 'User_talk:' + username, Math.random().toString() );
+               } );
+
+               // log in
+               UserLoginPage.login( username, password );
+
+               // check
+               assert.equal( UserMessagePage.usermessage.getText(), 'You have a new message (last change).' );
+
+       } );
+
 } );