[MediaWiki-commits] [Gerrit] Add new scenarios for font changes - change (mediawiki...UniversalLanguageSelector)

2013-08-27 Thread Nikerabbit (Code Review)
Nikerabbit has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/81206


Change subject: Add new scenarios for font changes
..

Add new scenarios for font changes

There is currently some duplication between the varios page objects
and other code. Those should be cleaned up incrementally.

Change-Id: I592829a00ca65bbecd5399b773c885c764c1cc06
---
A tests/browser/features/font_selection.feature
A tests/browser/features/persistent_settings.feature
M tests/browser/features/step_definitions/common_steps.rb
A tests/browser/features/step_definitions/panel_steps.rb
A tests/browser/features/support/pages/panel_page.rb
A tests/browser/features/support/pages/reset_preferences.rb
6 files changed, 198 insertions(+), 0 deletions(-)


  git pull 
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/UniversalLanguageSelector 
refs/changes/06/81206/1

diff --git a/tests/browser/features/font_selection.feature 
b/tests/browser/features/font_selection.feature
new file mode 100644
index 000..5e1467a
--- /dev/null
+++ b/tests/browser/features/font_selection.feature
@@ -0,0 +1,38 @@
+@reset-preferences-after @login @en.wikipedia.beta.wmflabs.org 
@commons.wikimedia.beta.wmflabs.org
+Feature: Font selection
+
+In order to have better using experience,
+As a reader and writer,
+I want to change or disable the fonts for interface and content.
+
+In addition the user is provided live preview feature: changes are applied
+immediately when selection is made. Changes can either be applied or discared
+for easy testing.
+
+Background:
+  Given I am logged in
+And I set German as the interface language
+And the content language is English
+And I inspect current fonts
+
+Scenario: Discarding live preview of content font
+  When I open Fonts panel of language settings
+And I select OpenDyslexic font for the content language for the live 
preview
+And I close the panel to discard the changes
+  Then the active interface font must be the same as font prior to the preview
+# System is the default value for English and German
+And the selected interface font must be system
+
+Scenario: Discarding live preview of interface font
+  When I open Fonts panel of language settings
+And I select OpenDyslexic font for the interface language for the live 
preview
+And I close the panel to discard the changes
+  Then the active content font must be the same as font prior to the preview
+# System is the default value for English and German
+And the selected content font must be system
+
+Scenario: Applying the live preview of interface font
+  When I open Fonts panel of language settings
+And I select OpenDyslexic font for the interface language for the live 
preview
+And I apply the changes
+  Then the interface font must be changed to the OpenDyslexic font
diff --git a/tests/browser/features/persistent_settings.feature 
b/tests/browser/features/persistent_settings.feature
new file mode 100644
index 000..a75b372
--- /dev/null
+++ b/tests/browser/features/persistent_settings.feature
@@ -0,0 +1,14 @@
+@login @reset-preferences-after @en.wikipedia.beta.wmflabs.org 
@commons.wikimedia.beta.wmflabs.org
+Feature: Persistent settings
+
+  Background:
+Given I am logged in
+  And I set German as the interface language
+  And the content language is English
+
+  Scenario: Interface font sticks to another page
+When I open Fonts panel of language settings
+  And I select OpenDyslexic font for the interface language for the live 
preview
+  And I apply the changes
+  And I visit a random page
+Then the selected interface font must be OpenDyslexic
diff --git a/tests/browser/features/step_definitions/common_steps.rb 
b/tests/browser/features/step_definitions/common_steps.rb
index 7886fc6..5d9fe21 100644
--- a/tests/browser/features/step_definitions/common_steps.rb
+++ b/tests/browser/features/step_definitions/common_steps.rb
@@ -5,3 +5,31 @@
 Given(/^I am logged in$/) do
   visit(LoginPage).login_with(@mediawiki_username, @mediawiki_password)
 end
+
+def language_to_code(language)
+   case language
+   when 'German'
+   'de'
+   when 'English'
+   'en'
+   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
+
+After('@reset-preferences-after') do |scenario|
+   visit(ResetPreferencesPage)
+   on(ResetPreferencesPage).submit_element.click
+end
diff --git a/tests/browser/features/step_definitions/panel_steps.rb 
b/tests/browser/features/step_definitions/panel_steps.rb
new file mode 100644
index 000..23b1002
--- /dev/null
+++ b/tests/browser/features/step_definitions/panel_steps.rb
@@ -0,0 +1,97 @@
+Given(/^I 

[MediaWiki-commits] [Gerrit] Add new scenarios for font changes - change (mediawiki...UniversalLanguageSelector)

2013-08-27 Thread jenkins-bot (Code Review)
jenkins-bot has submitted this change and it was merged.

Change subject: Add new scenarios for font changes
..


Add new scenarios for font changes

There is currently some duplication between the various page objects
and other code. Those should be cleaned up incrementally.

Change-Id: I592829a00ca65bbecd5399b773c885c764c1cc06
---
A tests/browser/features/font_selection.feature
A tests/browser/features/persistent_settings.feature
M tests/browser/features/step_definitions/common_steps.rb
A tests/browser/features/step_definitions/panel_steps.rb
A tests/browser/features/support/pages/panel_page.rb
A tests/browser/features/support/pages/reset_preferences.rb
6 files changed, 198 insertions(+), 0 deletions(-)

Approvals:
  Amire80: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/tests/browser/features/font_selection.feature 
b/tests/browser/features/font_selection.feature
new file mode 100644
index 000..8e3b122
--- /dev/null
+++ b/tests/browser/features/font_selection.feature
@@ -0,0 +1,38 @@
+@reset-preferences-after @login @en.wikipedia.beta.wmflabs.org 
@commons.wikimedia.beta.wmflabs.org
+Feature: Font selection
+
+In order to have better using experience,
+As a reader and writer,
+I want to change or disable the fonts for interface and content.
+
+In addition the user is provided live preview feature: changes are applied
+immediately when selection is made. Changes can either be applied or discared
+for easy testing.
+
+Background:
+  Given I am logged in
+And I set German as the interface language
+And the content language is English
+And I inspect current fonts
+
+Scenario: Discarding live preview of content font
+  When I open Fonts panel of language settings
+And I select OpenDyslexic font for the content language for the live 
preview
+And I close the panel to discard the changes
+  Then the active content font must be the same as font prior to the preview
+# System is the default value for English and German
+And the selected content font must be system
+
+Scenario: Discarding live preview of interface font
+  When I open Fonts panel of language settings
+And I select OpenDyslexic font for the interface language for the live 
preview
+And I close the panel to discard the changes
+  Then the active interface font must be the same as font prior to the preview
+# System is the default value for English and German
+And the selected interface font must be system
+
+Scenario: Applying the live preview of interface font
+  When I open Fonts panel of language settings
+And I select OpenDyslexic font for the interface language for the live 
preview
+And I apply the changes
+  Then the interface font must be changed to the OpenDyslexic font
diff --git a/tests/browser/features/persistent_settings.feature 
b/tests/browser/features/persistent_settings.feature
new file mode 100644
index 000..a75b372
--- /dev/null
+++ b/tests/browser/features/persistent_settings.feature
@@ -0,0 +1,14 @@
+@login @reset-preferences-after @en.wikipedia.beta.wmflabs.org 
@commons.wikimedia.beta.wmflabs.org
+Feature: Persistent settings
+
+  Background:
+Given I am logged in
+  And I set German as the interface language
+  And the content language is English
+
+  Scenario: Interface font sticks to another page
+When I open Fonts panel of language settings
+  And I select OpenDyslexic font for the interface language for the live 
preview
+  And I apply the changes
+  And I visit a random page
+Then the selected interface font must be OpenDyslexic
diff --git a/tests/browser/features/step_definitions/common_steps.rb 
b/tests/browser/features/step_definitions/common_steps.rb
index 7886fc6..5d9fe21 100644
--- a/tests/browser/features/step_definitions/common_steps.rb
+++ b/tests/browser/features/step_definitions/common_steps.rb
@@ -5,3 +5,31 @@
 Given(/^I am logged in$/) do
   visit(LoginPage).login_with(@mediawiki_username, @mediawiki_password)
 end
+
+def language_to_code(language)
+   case language
+   when 'German'
+   'de'
+   when 'English'
+   'en'
+   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
+
+After('@reset-preferences-after') do |scenario|
+   visit(ResetPreferencesPage)
+   on(ResetPreferencesPage).submit_element.click
+end
diff --git a/tests/browser/features/step_definitions/panel_steps.rb 
b/tests/browser/features/step_definitions/panel_steps.rb
new file mode 100644
index 000..e12371f
--- /dev/null
+++ b/tests/browser/features/step_definitions/panel_steps.rb
@@ -0,0 +1,97 @@
+Given(/^I set (.*?) as the interface language$/) do |language|
+   code =