mediawiki-skins-MinervaNeue/tests/selenium/specs/search_loggedin.js
Vaughn Walters 677ce50b24 selenium: Refactor WebdriverIO tests from sync to async mode
WebdriverIO has dropped support of sync mode, hence changed to async.

Update npm packages: @wdio/*, wdio-mediawiki
because async mode needs at least @wdio v7.9.

Remove npm packages: @wdio/dot-reporter and @wdio/sync.

Bug: T293084
Change-Id: I5babbdadf21e9f951f69de93bfca5213a50965aa
2023-04-08 16:18:28 -05:00

35 lines
1.1 KiB
JavaScript

'use strict';
const {
pageExists, iShouldSeeAToastNotification,
iAmUsingMobileScreenResolution,
iAmUsingTheMobileSite,
iAmLoggedIntoTheMobileWebsite,
iAmOnPage
} = require( '../features/step_definitions/common_steps' ),
{
iClickTheSearchIcon,
iTypeIntoTheSearchBox,
iClickASearchWatchstar,
iSeeTheSearchOverlay
} = require( '../features/step_definitions/search_steps' );
// @test2.m.wikipedia.org @vagrant @login
describe( 'Search', () => {
it( 'Clicking on a watchstar toggles the watchstar', async () => {
await iAmUsingTheMobileSite();
await pageExists( 'Selenium search test' );
await iAmLoggedIntoTheMobileWebsite();
await iAmOnPage( 'Main Page' );
await iAmUsingMobileScreenResolution();
await iClickTheSearchIcon();
await iSeeTheSearchOverlay();
await iTypeIntoTheSearchBox( 'Selenium search tes' );
// This pause statement is a temporary bandaid until we figure a bettery dynamic sync
// eslint-disable-next-line wdio/no-pause
await browser.pause( 1000 );
await iClickASearchWatchstar();
await iShouldSeeAToastNotification();
} );
} );