Refactored scenario: Edit area fonts should not change on UI language change if the user preferences for edit area font are set
Started in a pairing session Amir and Željko, ended in session Niklas and Željko. Change-Id: I30ef2b41cfdceda04818f16f06e0071c487b90b6
This commit is contained in:
committed by
Zfilipin
parent
967683c98e
commit
b0d905a554
@@ -50,7 +50,7 @@ When(/^I click X$/) do
|
||||
end
|
||||
|
||||
When(/^in the language filter I type (.+)$/) do |language_abbreviation|
|
||||
on(RandomPage).language_filter=language_abbreviation
|
||||
on(IMEPage).language_filter=language_abbreviation
|
||||
end
|
||||
|
||||
Then(/^I can navigate back to Input Settings$/) do
|
||||
|
||||
@@ -2,6 +2,22 @@ Then(/^I see "(.*?)" as the name of the content language$/) do |text|
|
||||
@browser.span(:text => "#{text}").should be_visible
|
||||
end
|
||||
|
||||
When(/^I open the Universal Language Selector$/) do
|
||||
on(PanelPage).trigger_personal_element.when_visible.click
|
||||
end
|
||||
|
||||
When(/^I open Display panel of language settings$/) do
|
||||
on(PanelPage).panel_display_element.when_visible.click
|
||||
end
|
||||
|
||||
When(/^I open Language panel of language settings$/) do
|
||||
on(PanelPage).panel_language_element.click
|
||||
end
|
||||
|
||||
When(/^I open Fonts panel of language settings$/) do
|
||||
on(PanelPage).panel_fonts_element.click
|
||||
end
|
||||
|
||||
When(/^I open "(.*?)" panel of language settings$/) do |panel|
|
||||
visit(PanelPage) do |page|
|
||||
# Open the ULS panel if it's not open already
|
||||
@@ -15,11 +31,6 @@ When(/^I open "(.*?)" panel of language settings$/) do |panel|
|
||||
end
|
||||
|
||||
case panel
|
||||
when "Display"
|
||||
page.panel_display_element.when_visible.click
|
||||
when "Language"
|
||||
page.panel_display_element.when_visible.click
|
||||
page.panel_language_element.click
|
||||
when "Fonts"
|
||||
page.panel_display_element.when_visible.click
|
||||
page.panel_fonts_element.click
|
||||
@@ -32,11 +43,11 @@ When(/^I open "(.*?)" panel of language settings$/) do |panel|
|
||||
end
|
||||
|
||||
When(/^I select "(.*?)" font for the interface language for the live preview$/) do |font|
|
||||
on(PanelPage).select_font_for_interface = font
|
||||
on(PanelPage).font_for_interface = font
|
||||
end
|
||||
|
||||
When(/^I select "(.*?)" font for the content language for the live preview$/) do |font|
|
||||
on(PanelPage).select_font_for_content = font
|
||||
on(PanelPage).font_for_content = font
|
||||
end
|
||||
|
||||
|
||||
@@ -66,9 +77,11 @@ end
|
||||
|
||||
When(/^I use the panel to change my interface language to "(.*?)"$/) do |language|
|
||||
code = on(PanelPage).language_to_code(language)
|
||||
on(RandomPage).language_filter = code
|
||||
on(IMEPage) do |page|
|
||||
page.language_filter = code
|
||||
# Because one browser wants :enter and other :return -- sigh
|
||||
on(RandomPage).language_filter_element.send_keys [:enter, "\n"]
|
||||
page.language_filter_element.send_keys [:enter, "\n"]
|
||||
end
|
||||
end
|
||||
|
||||
Then(/^the panel is in English/) do
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
Given(/^I have reset my preferences$/) do
|
||||
visit(ResetPreferencesPage).submit_element.click
|
||||
end
|
||||
|
||||
When(/^I set the editing fonts to "(.*?)"$/) do |editing_font|
|
||||
visit(PreferencesPage) do |page|
|
||||
page.preftab_editing_element.click
|
||||
page.pref_editfont_element.select_value editing_font
|
||||
page.editing_tab_element.click
|
||||
page.editing_font_element.select_value editing_font
|
||||
page.save_element.click
|
||||
end
|
||||
end
|
||||
|
||||
When(/^I edit a page$/) do
|
||||
When(/^I start editing a page$/) do
|
||||
visit(NoInterlanguagePage).edit_link_element.click
|
||||
end
|
||||
|
||||
|
||||
@@ -37,8 +37,8 @@ class PanelPage
|
||||
select(:selected_content_font, id: 'content-font-selector')
|
||||
select(:selected_interface_font, id: 'ui-font-selector')
|
||||
|
||||
select(:select_font_for_interface, id: 'ui-font-selector')
|
||||
select(:select_font_for_content, id: 'content-font-selector')
|
||||
select(:font_for_interface, id: 'ui-font-selector')
|
||||
select(:font_for_content, id: 'content-font-selector')
|
||||
|
||||
div(:uls_display_settings, class: 'uls-display-settings')
|
||||
|
||||
|
||||
@@ -7,6 +7,6 @@ class PreferencesPage
|
||||
select(:set_interface_language, id: 'mw-input-wplanguage')
|
||||
button(:save, id: 'prefcontrol')
|
||||
|
||||
a(:preftab_editing, id: 'preftab-editing')
|
||||
select(:pref_editfont, id: 'mw-input-wpeditfont')
|
||||
a(:editing_tab, id: 'preftab-editing')
|
||||
select(:editing_font, id: 'mw-input-wpeditfont')
|
||||
end
|
||||
|
||||
@@ -8,33 +8,21 @@ Feature: Font preferences respected in different languages
|
||||
the edit area has the font according to the ULS webfont preferences.
|
||||
|
||||
Background:
|
||||
# This is needed to reset the fonts for the relevant languages.
|
||||
# There's no better way to reset ULS preferences.
|
||||
Given I am logged in
|
||||
When I open "Language" panel of language settings
|
||||
And I click the button with the ellipsis
|
||||
And I use the panel to change my interface language to "German"
|
||||
And I open "Fonts" panel of language settings
|
||||
# This is the System font
|
||||
And I select "Systemschriftart" font for the content language for the live preview
|
||||
And I select "Systemschriftart" font for the interface language for the live preview
|
||||
And I open "Language" panel of language settings
|
||||
And I click the button with the ellipsis
|
||||
And I use the panel to change my interface language to "English"
|
||||
And I apply the changes
|
||||
And I set the editing fonts to "default"
|
||||
And I have reset my preferences
|
||||
|
||||
@commons.wikimedia.beta.wmflabs.org
|
||||
Scenario: Edit area fonts should not change on UI language change if the user preferences for edit area font are set
|
||||
When I set the editing fonts to "monospace"
|
||||
And I edit a page
|
||||
And I set "Hindi" as the interface language
|
||||
And I start editing a page
|
||||
Then I should see the edit area text being displayed using "monospace" font
|
||||
And I set the editing fonts to "default"
|
||||
|
||||
Scenario: Edit area should use the fonts selected by the user from ULS for a language
|
||||
When I open "Fonts" panel of language settings
|
||||
And I select "OpenDyslexic" font for the content language for the live preview
|
||||
And I apply the changes
|
||||
And I edit a page
|
||||
And I start editing a page
|
||||
Then I should see the edit area text being displayed using "OpenDyslexic" font
|
||||
|
||||
Scenario: Edit area should use the ULS selected fonts when content language has a ULS font selection
|
||||
@@ -44,7 +32,7 @@ Feature: Font preferences respected in different languages
|
||||
And I open "Fonts" panel of language settings
|
||||
And I select "OpenDyslexic" font for the content language for the live preview
|
||||
And I apply the changes
|
||||
And I edit a page
|
||||
And I start editing a page
|
||||
Then I should see the edit area text being displayed using "OpenDyslexic" font
|
||||
|
||||
Scenario: Edit area should use the system default fonts when content language does not have any ULS font selection
|
||||
@@ -52,9 +40,9 @@ Feature: Font preferences respected in different languages
|
||||
And I click the button with the ellipsis
|
||||
And I use the panel to change my interface language to "German"
|
||||
And I apply the changes
|
||||
And I edit a page
|
||||
And I start editing a page
|
||||
Then I should see the edit area text being displayed using "monospace" font
|
||||
|
||||
Scenario: Edit area should use browser's default Monospace font for languages that have a default monospace font (Latin, Cyrillic, Hebrew etc.)
|
||||
When I edit a page
|
||||
When I start editing a page
|
||||
Then I should see the edit area text being displayed using "monospace" font
|
||||
|
||||
Reference in New Issue
Block a user