67 lines
1.4 KiB
Ruby
67 lines
1.4 KiB
Ruby
Given(/^I am at random page$/) do
|
|
visit RandomPage
|
|
end
|
|
|
|
Given(/^I am logged out$/) do
|
|
end
|
|
|
|
Given(/^I am logged in$/) do
|
|
visit(LoginPage).login_with(ENV['MEDIAWIKI_USER'], ENV['MEDIAWIKI_PASSWORD'])
|
|
# Assert that login worked
|
|
loggedin = !@browser.execute_script( "return mw.user.isAnon();" )
|
|
loggedin.should be_true
|
|
end
|
|
|
|
Given(/^I set "(.*?)" as the interface language$/) do |language|
|
|
code = language_to_code(language)
|
|
visit(PanelPage, :using_params => {:extra => "setlang=#{code}"})
|
|
end
|
|
|
|
Given(/^I temporarily use "(.*?)" as the interface language$/) do |language|
|
|
code = language_to_code(language)
|
|
visit(PanelPage, :using_params => {:extra => "uselang=#{code}"})
|
|
end
|
|
|
|
Then(/^my interface language is "(.*?)"$/) do |language|
|
|
code = language_to_code(language)
|
|
on(PanelPage).interface_element.attribute('lang').should == code
|
|
end
|
|
|
|
def language_to_code(language)
|
|
case language
|
|
when 'German'
|
|
'de'
|
|
when 'English'
|
|
'en'
|
|
when 'Finnish'
|
|
'fi'
|
|
when 'Hebrew'
|
|
'he'
|
|
when 'Hindi'
|
|
'hi'
|
|
else
|
|
pending
|
|
end
|
|
end
|
|
|
|
def get_font(selector)
|
|
@browser.execute_script( "return $( '#{selector}' ).css( 'font-family' );" )
|
|
end
|
|
|
|
def get_content_font()
|
|
get_font('#mw-content-text')
|
|
end
|
|
|
|
def get_interface_font()
|
|
get_font('body')
|
|
end
|
|
|
|
def uls_position()
|
|
if !defined?($uls_position)
|
|
visit(PanelPage)
|
|
$uls_position = @browser.execute_script( "return mw.config.get( 'wgULSPosition' )" );
|
|
else
|
|
$uls_position
|
|
end
|
|
end
|