mediawiki-extensions-Multim.../tests/browser/features/step_definitions/mmv_navigation_steps.rb
Cmcmahon 711e2837fc QA: update navigation test for rspec
This should be pretty straightforward

* use RSpec3 expect() syntax
* prefer string to regex as argument to match() when appropriate
* use Selenium $browser.back instead of inline javascript

Change-Id: I2e214752224397859a00f11bf9acc5bdc7685464
2014-12-17 15:02:38 -07:00

43 lines
1.3 KiB
Ruby

# encoding: utf-8
When /^I click the next arrow$/ do
on(E2ETestPage).mmv_next_button_element.when_present.click
end
When /^I click the previous arrow$/ do
on(E2ETestPage).mmv_previous_button_element.when_present.click
end
When /^I press the browser back button$/ do
$browser.back
end
Then /^the image and metadata of the next image should appear$/ do
on(E2ETestPage) do |page|
# MMV was launched, article is not visible yet
expect(page.image1_in_article_element).not_to be_visible
check_elements_in_viewer_for_image3 page
end
end
Then /^the image and metadata of the previous image should appear$/ do
on(E2ETestPage) do |page|
# MMV was launched, article is not visible yet
expect(page.image1_in_article_element).not_to be_visible
check_elements_in_viewer_for_image1 page
end
end
Then /^the wiki article should be scrolled to the same position as before opening MMV$/ do
on(E2ETestPage) do |page|
@scrollDifference = page.execute_script("return $(window).scrollTop();") - @articleScrollTop
expect(@scrollDifference.abs).to be < 2
end
end
Then /^I should be navigated back to the original wiki article$/ do
on(E2ETestPage) do |page|
expect(page.image1_in_article_element).to be_visible
expect(page.mmv_wrapper_element).not_to be_visible
end
end