wiki.techinc.nl/tests/selenium/specs/watchlist.js
Željko Filipin 1746c9e623 selenium: Document when, how and why a test is skipped
Bug: T280652
Change-Id: I4a2803386d849ca9af995e643b573319a0f766f3
2024-10-02 12:00:39 +02:00

50 lines
1.5 KiB
JavaScript

'use strict';
const Api = require( 'wdio-mediawiki/Api' );
const WatchlistPage = require( '../pageobjects/watchlist.page' );
const WatchablePage = require( '../pageobjects/watchable.page' );
const LoginPage = require( 'wdio-mediawiki/LoginPage' );
const BlankPage = require( 'wdio-mediawiki/BlankPage' );
const Util = require( 'wdio-mediawiki/Util' );
describe( 'Special:Watchlist', () => {
let bot;
before( async () => {
// Default bot is the admin that we also use for viewing via LoginPage.loginAdmin()
bot = await Api.bot();
} );
beforeEach( async () => {
await LoginPage.loginAdmin();
} );
// Skipped on 2022-12-07 in 865696 because of T324237
it.skip( 'should show page with new edit @daily', async function () {
const title = Util.getTestString( 'Title-' );
// First try to load a blank page, so the next command works.
await BlankPage.open();
// Don't try to run wikitext-specific tests if the test namespace isn't wikitext by default.
if ( await Util.isTargetNotWikitext( title ) ) {
this.skip();
}
// create
await bot.edit( title, Util.getTestString() );
await WatchablePage.watch( title );
// edit
await bot.edit( title, Util.getTestString() );
await WatchlistPage.open();
// We are viewing Special:Watchlist with the same account that made the edit,
// but by default Special:Watchlist includes both seen and unseen changes, so
// it'll show up anyway. The title we just edited will be first because the edit
// was the most recent.
await expect( await WatchlistPage.titles[ 0 ] ).toHaveText( title );
} );
} );