Fix Selenium tests
[mediawiki.git] / tests / browser / features / step_definitions / login_steps.rb
blob14a2d76ad152b267c41bdc33c954d428f336823e
1 Given(/^I am at Log in page$/) do
2   visit LoginPage
3 end
5 When(/^I log in$/) do
6   on(LoginPage).login_with(user, password, false)
7 end
9 When(/^I log in with incorrect password$/) do
10   on(LoginPage).login_with(user, 'incorrect password', false)
11 end
13 When(/^I log in with incorrect username$/) do
14   on(LoginPage).login_with('incorrect username', password, false)
15 end
17 When(/^I log in without entering credentials$/) do
18   on(LoginPage).login_with('', '', false)
19 end
21 When(/^I log in without entering password$/) do
22   on(LoginPage).login_with(user, '', false)
23 end
25 Then(/^error box should be visible$/) do
26   expect(on(LoginPage).error_message_element).to exist
27 end
29 Then(/^error box should not be visible$/) do
30   expect(on(LoginPage).error_message_element).not_to exist
31 end
33 Then(/^error message should be displayed for username$/) do
34   expect(on(LoginPage).username_error_element).to exist
35 end
37 Then(/^error message should be displayed for password$/) do
38   expect(on(LoginPage).password_error_element).to exist
39 end
41 Then(/^feedback should be (.+)$/) do |feedback|
42   on(LoginPage) do |page|
43     page.feedback_element.when_present.click
44     expect(page.feedback).to match Regexp.escape(feedback)
45   end
46 end
48 Then(/^Log in element should be there$/) do
49   expect(on(LoginPage).login_element).to exist
50 end
52 Then(/^main page should open$/) do
53   expect(@browser.url).to eq on(MainPage).class.url
54 end
56 Then(/^Password element should be there$/) do
57   expect(on(LoginPage).password_element).to exist
58 end
60 Then(/^there should be a link to (.+)$/) do |text|
61   expect(on(LoginPage).username_displayed_element.when_present.text).to eq text
62 end
64 Then(/^Username element should be there$/) do
65   expect(on(LoginPage).username_element).to exist
66 end