mediawiki-extensions-Popups/tests/browser/features/support/step_definitions/common_steps.rb
Baha 728073d9e4 QA: Updates to browser tests to avoid flakiness
* Wait until the form submits successfully, verifying it
worked by testing for the notification toast.
* Drop sleep statements where possible - instead use when_present
Use one when asserting something doesn't show to avoid false positives
* Allow more time for the hovercard to show (5s) - API requests might take
longer than default time.
* Assert popups JavaScript loads before continuing with test. This
helped trap a bug in testing and will be useful for future.

Bug: T133019
Depends-On: Icb1e6ddc8f95da5e4b4de2916d292694c11ba731
Change-Id: Iacd3beedf44cadffcf0285231b2df7e5b64294f6
2016-04-20 20:02:13 +00:00

20 lines
569 B
Ruby

Given(/^the hover cards test page is installed$/) do
api.create_page 'Popups test page', File.read('samples/links.wikitext')
end
Given(/^I am on the "(.*?)" page$/) do |page|
visit(ArticlePage, using_params: { article_name: page })
end
Then(/^HoverCards is enabled as a beta feature$/) do
visit(SpecialPreferencesPage).enable_hovercards
end
Given(/^the Hovercards JavaScript module has loaded$/) do
on(ArticlePage) do |page|
page.wait_until do
browser.execute_script("return mw.loader.getState('ext.popups.desktop') === 'ready'")
end
end
end