Refactoring live preview

Change-Id: I351094b8d746d991b1f1d92f3dd097f092e3f0f5
This commit is contained in:
Niklas Laxström
2013-12-02 12:59:48 +02:00
committed by Zfilipin
parent 5749d92c4f
commit b04c6f8de2
7 changed files with 27 additions and 26 deletions

View File

@@ -3,16 +3,16 @@ Feature: Live preview of display language changes
Background:
Given I am logged in
And I have reset my preferences
And I set "English" as the interface language
And I am on a page with interlanguage links
And I am at random page
@commons.wikimedia.beta.wmflabs.org
Scenario: Display language change is previewed immediately
Given I open "Language" panel of language settings
Given I open the Universal Language Selector
And I open Display panel of language settings
And I click the button with the ellipsis
And in the language filter I type hi
And I click on the link to select Hindi
Then I should see the text in the language panel in Hindi
And in the language filter I type malayalam
And I click on the link to select Malayalam
Then I should see the text in the language panel in Malayalam
Scenario: Live preview of display language changes can be reverted on cancel
Given I open "Language" panel of language settings

View File

@@ -31,14 +31,6 @@ When(/^I click Cancel$/) do
on(PanelPage).panel_button_cancel_element.click
end
When(/^I click on the link to select Malayalam$/) do
on(RandomPage).malayalam_link
end
When(/^I click the button with the ellipsis$/) do
on(InterlanguagePage).ellipsis_button_element.click
end
When(/^I click the cog icon by Languages in the sidebar$/) do
on(NoInterlanguagePage).cog_element.when_present.click
# Wait for the panel to open
@@ -49,10 +41,6 @@ When(/^I click X$/) do
on(InterlanguagePage).x_element.click
end
When(/^in the language filter I type (.+)$/) do |language_abbreviation|
on(IMEPage).language_filter=language_abbreviation
end
Then(/^I can navigate back to Input Settings$/) do
on(InterlanguagePage) do |page|
page.back_to_input

View File

@@ -25,3 +25,11 @@ Then(/^my interface language is "(.*?)"$/) do |language|
code = on(PanelPage).language_to_code(language)
on(PanelPage).interface_element.attribute("lang").should == code
end
When(/^I click the button with the ellipsis$/) do
on(InterlanguagePage).ellipsis_button_element.click
end
When(/^in the language filter I type (.+)$/) do |language_abbreviation|
on(IMEPage).language_filter = language_abbreviation
end

View File

@@ -2,7 +2,7 @@ When(/^I set English font to System$/) do
on(PanelPage).select_font_for_content = "System font"
end
And(/^I set English font to OpenDyslexic$/) do
When(/^I set English font to OpenDyslexic$/) do
on(PanelPage).select_font_for_content = "OpenDyslexic"
end
@@ -10,12 +10,12 @@ Then(/^the selected content font must be OpenDyslexic$/) do
on(PanelPage).select_font_for_content.should == "OpenDyslexic"
end
And(/^I select a language different than English for display language$/) do
Given(/^I select a language different than English for display language$/) do
on(PanelPage).other_language_button_element.click
end
And(/^I click on the link to select Hindi$/) do
on(InterlanguagePage).hindi_link_element.click
When(/^I click on the link to select Malayalam$/) do
on(RandomPage).malayalam_element.click
end
Then(/^I should see the text in the language panel in (.+?)$/) do |language|

View File

@@ -10,7 +10,7 @@ module InterlanguagePageModule
span(:cog, class: "uls-settings-trigger")
button(:ellipsis_button, class: "uls-more-languages button")
a(:english_link, text: "English")
a(:hindi_link, text: "हिन्दी")
a(:hindi_link, title: "Hindi")
div(:input_settings, id: "input-settings-block")
div(:language_list, class: "row uls-language-list lcd")
text_field(:language_search, id: "languagefilter")

View File

@@ -13,8 +13,10 @@ module LanguageModule
"he"
when "Hindi"
"hi"
when "Malayalam"
"ml"
else
pending
p "Unknown language #{language}"
end
end
end

View File

@@ -11,7 +11,10 @@ class RandomPage
a(:download_as_pdf, text: "Download as PDF")
a(:download_the_file, text: "Download the file")
li(:main_page, id: "n-mainpage-description")
a(:malayalam_link, title: "Malayalam")
div(:asia, id: 'AS')
a(:malayalam) do |page|
page.asia_element.element.a(title: "Malayalam")
end
a(:print_export, text: "Print/export")
a(:printable_version, text: "Printable version")
button(:search_button, id: "searchButton")