(bug 49738) Use correct name for wiki content language
Happens when anonymous user cannot change language, and the language of the translation differs from the content language. Change-Id: Ie4f15f1813eec992cfe060baf9cd7dcb5f8a0d95
This commit is contained in:
@@ -12,12 +12,33 @@ Given(/^I am logged in$/) do
|
||||
loggedin.should be_true
|
||||
end
|
||||
|
||||
Given(/^I set "(.*?)" as the interface language$/) do |language|
|
||||
code = language_to_code(language)
|
||||
visit(ULSPage, :using_params => {:extra => "setlang=#{code}"})
|
||||
# And check it took effect
|
||||
actual = @browser.execute_script( "return jQuery( 'html' ).attr( 'lang' )" )
|
||||
actual.should == code
|
||||
end
|
||||
|
||||
Given(/^I temporarily use "(.*?)" as the interface language$/) do |language|
|
||||
code = language_to_code(language)
|
||||
visit(ULSPage, :using_params => {:extra => "uselang=#{code}"})
|
||||
end
|
||||
|
||||
Given(/^the content language is "(.*?)"$/) do |language|
|
||||
code = language_to_code(language)
|
||||
actual = @browser.execute_script( "return mw.config.get( 'wgContentLanguage' )" )
|
||||
actual.should == code
|
||||
end
|
||||
|
||||
def language_to_code(language)
|
||||
case language
|
||||
when 'German'
|
||||
'de'
|
||||
when 'English'
|
||||
'en'
|
||||
when 'Finnish'
|
||||
'fi'
|
||||
else
|
||||
pending
|
||||
end
|
||||
|
||||
@@ -1,15 +1,5 @@
|
||||
Given(/^I set "(.*?)" as the interface language$/) do |language|
|
||||
code = language_to_code(language)
|
||||
visit(ULSPage, :using_params => {:setlang => "#{code}"})
|
||||
# And check it took effect
|
||||
actual = @browser.execute_script( "return jQuery( 'html' ).attr( 'lang' )" )
|
||||
actual.should == code
|
||||
end
|
||||
|
||||
Given(/^the content language is "(.*?)"$/) do |language|
|
||||
code = language_to_code(language)
|
||||
actual = @browser.execute_script( "return mw.config.get( 'wgContentLanguage' )" )
|
||||
actual.should == code
|
||||
Then(/^I see "(.*?)" as the name of the content language$/) do |text|
|
||||
@browser.span(:text => "#{text}").should be_visible
|
||||
end
|
||||
|
||||
Given(/^I inspect current fonts$/) do
|
||||
|
||||
@@ -2,7 +2,7 @@ class ULSPage
|
||||
include PageObject
|
||||
|
||||
include URL
|
||||
page_url URL.url('?setlang=<%=params[:setlang]%>')
|
||||
page_url URL.url('?<%=params[:extra]%>')
|
||||
|
||||
div(:panel_display, id: 'display-settings-block')
|
||||
div(:panel_input, id: 'input-settings-block')
|
||||
|
||||
@@ -51,3 +51,15 @@ Feature: ULS settings panel
|
||||
And I click X
|
||||
And I open "Language" panel of language settings
|
||||
Then the panel is in English
|
||||
|
||||
Scenario: The name of site content language is correct when translation language is different
|
||||
|
||||
This feature is a bit hard to test. In most cases content language matches
|
||||
the language of translation. In addition this only applies to anonymous
|
||||
users in wikis where language changing for anonymous users is disabled. So
|
||||
to test this we create a somewhat artificial test case by setting the wiki
|
||||
interface language to a non-default value.
|
||||
|
||||
Given I temporarily use "Finnish" as the interface language
|
||||
When I open "Language" panel of language settings
|
||||
Then I see "English (sama kuin sisällön)" as the name of the content language
|
||||
|
||||
Reference in New Issue
Block a user