mirror of
https://gerrit.wikimedia.org/r/mediawiki/skins/MinervaNeue
synced 2024-12-04 18:48:15 +00:00
7f2b69ac14
This migrates the first of the browser tests which had a @login step from Ruby to Node.js Bug: T219920 Change-Id: I84e217e2a781aab9eb10e7d873c527d578ec8fd4
71 lines
2.3 KiB
JavaScript
71 lines
2.3 KiB
JavaScript
const assert = require( 'assert' );
|
|
const { ArticlePageWithEditorOverlay, ArticlePage } = require( '../support/world.js' );
|
|
|
|
const iClickTheEditButton = () => {
|
|
ArticlePage.edit_link_element.waitForVisible();
|
|
ArticlePage.edit_link_element.click();
|
|
};
|
|
const iSeeTheWikitextEditorOverlay = () => {
|
|
ArticlePageWithEditorOverlay.editor_overlay_element.waitForVisible();
|
|
ArticlePageWithEditorOverlay.editor_textarea_element.waitForExist();
|
|
};
|
|
const iClearTheEditor = () => {
|
|
ArticlePageWithEditorOverlay.editor_textarea_element.setValue( '' );
|
|
};
|
|
const iDoNotSeeTheWikitextEditorOverlay = () => {
|
|
browser.waitUntil( () => {
|
|
return ArticlePageWithEditorOverlay.editor_overlay_element.isVisible() === false;
|
|
}, 10000 );
|
|
};
|
|
const iTypeIntoTheEditor = ( text ) => {
|
|
ArticlePageWithEditorOverlay.editor_overlay_element.waitForExist();
|
|
ArticlePageWithEditorOverlay.editor_textarea_element.waitForExist();
|
|
ArticlePageWithEditorOverlay.editor_textarea_element.waitForVisible();
|
|
ArticlePageWithEditorOverlay.editor_textarea_element.addValue( text );
|
|
browser.waitUntil( () => {
|
|
return !ArticlePageWithEditorOverlay
|
|
.continue_element.getAttribute( 'disabled' );
|
|
} );
|
|
};
|
|
const iClickContinue = () => {
|
|
ArticlePageWithEditorOverlay.continue_element.waitForExist();
|
|
ArticlePageWithEditorOverlay.continue_element.click();
|
|
};
|
|
const iClickSubmit = () => {
|
|
ArticlePageWithEditorOverlay.submit_element.waitForExist();
|
|
ArticlePageWithEditorOverlay.submit_element.click();
|
|
};
|
|
const iSayOkayInTheConfirmDialog = () => {
|
|
browser.waitUntil( () => {
|
|
try {
|
|
const text = browser.alertText;
|
|
return text && true;
|
|
} catch ( e ) {
|
|
return false;
|
|
}
|
|
}, 2000 );
|
|
browser.alertAccept();
|
|
};
|
|
const theTextOfTheFirstHeadingShouldBe = ( title ) => {
|
|
ArticlePage.first_heading_element.waitForVisible();
|
|
assert.strictEqual(
|
|
ArticlePage.first_heading_element.getText(),
|
|
title
|
|
);
|
|
};
|
|
const thereShouldBeARedLinkWithText = ( text ) => {
|
|
ArticlePage.red_link_element.waitForExist();
|
|
assert.strictEqual(
|
|
ArticlePage.red_link_element.getText(),
|
|
text
|
|
);
|
|
};
|
|
|
|
module.exports = {
|
|
iClickTheEditButton, iSeeTheWikitextEditorOverlay, iClearTheEditor,
|
|
thereShouldBeARedLinkWithText,
|
|
iDoNotSeeTheWikitextEditorOverlay,
|
|
iTypeIntoTheEditor, iClickContinue, iClickSubmit, iSayOkayInTheConfirmDialog,
|
|
theTextOfTheFirstHeadingShouldBe
|
|
};
|