Update mediawiki_selenium Ruby gem to the latest version
Bug: 117976 Change-Id: I567880afcf7dc5d70e6d4edef1db16d7923ae31c
This commit is contained in:
2
Gemfile
2
Gemfile
@@ -1,4 +1,4 @@
|
||||
source "https://rubygems.org"
|
||||
|
||||
gem 'mediawiki_selenium', '~> 0.4.2'
|
||||
gem 'mediawiki_selenium', '~> 1.6.2'
|
||||
gem "rubocop", "~> 0.29.1", require: false
|
||||
|
||||
28
Gemfile.lock
28
Gemfile.lock
@@ -5,7 +5,7 @@ GEM
|
||||
astrolabe (1.3.1)
|
||||
parser (~> 2.2)
|
||||
builder (3.2.2)
|
||||
childprocess (0.5.6)
|
||||
childprocess (0.5.7)
|
||||
ffi (~> 1.0, >= 1.0.11)
|
||||
cucumber (1.3.20)
|
||||
builder (>= 2.1.2)
|
||||
@@ -17,11 +17,11 @@ GEM
|
||||
faker (>= 1.1.2)
|
||||
yml_reader (>= 0.4)
|
||||
diff-lcs (1.2.5)
|
||||
domain_name (0.5.24)
|
||||
domain_name (0.5.25)
|
||||
unf (>= 0.0.5, < 1.0.0)
|
||||
faker (1.5.0)
|
||||
i18n (~> 0.5)
|
||||
faraday (0.9.1)
|
||||
faraday (0.9.2)
|
||||
multipart-post (>= 1.2, < 3)
|
||||
faraday-cookie_jar (0.0.6)
|
||||
faraday (>= 0.7.4)
|
||||
@@ -29,7 +29,7 @@ GEM
|
||||
ffi (1.9.10)
|
||||
gherkin (2.12.2)
|
||||
multi_json (~> 1.3)
|
||||
headless (1.0.2)
|
||||
headless (2.2.0)
|
||||
http-cookie (1.0.2)
|
||||
domain_name (~> 0.5)
|
||||
i18n (0.7.0)
|
||||
@@ -37,20 +37,22 @@ GEM
|
||||
mediawiki_api (0.5.0)
|
||||
faraday (~> 0.9, >= 0.9.0)
|
||||
faraday-cookie_jar (~> 0.0, >= 0.0.6)
|
||||
mediawiki_selenium (0.4.3)
|
||||
cucumber (~> 1.3, >= 1.3.10)
|
||||
headless (~> 1.0, >= 1.0.1)
|
||||
mediawiki_selenium (1.6.2)
|
||||
cucumber (~> 1.3, >= 1.3.20)
|
||||
headless (~> 2.0, >= 2.1.0)
|
||||
json (~> 1.8, >= 1.8.1)
|
||||
mediawiki_api (~> 0.2, >= 0.2.1)
|
||||
mediawiki_api (~> 0.5, >= 0.5.0)
|
||||
page-object (~> 1.0)
|
||||
rest-client (~> 1.6, >= 1.6.7)
|
||||
rspec-core (~> 2.14, >= 2.14.4)
|
||||
rspec-expectations (~> 2.14, >= 2.14.4)
|
||||
syntax (~> 1.2, >= 1.2.0)
|
||||
thor (~> 0.19, >= 0.19.1)
|
||||
mime-types (2.6.2)
|
||||
multi_json (1.11.2)
|
||||
multi_test (0.1.2)
|
||||
multipart-post (2.0.0)
|
||||
netrc (0.10.3)
|
||||
netrc (0.11.0)
|
||||
page-object (1.1.0)
|
||||
page_navigation (>= 0.9)
|
||||
selenium-webdriver (>= 2.44.0)
|
||||
@@ -65,6 +67,7 @@ GEM
|
||||
http-cookie (>= 1.0.2, < 2.0)
|
||||
mime-types (>= 1.16, < 3.0)
|
||||
netrc (~> 0.7)
|
||||
rspec-core (2.99.2)
|
||||
rspec-expectations (2.99.2)
|
||||
diff-lcs (>= 1.1.3, < 2.0)
|
||||
rubocop (0.29.1)
|
||||
@@ -75,16 +78,17 @@ GEM
|
||||
ruby-progressbar (~> 1.4)
|
||||
ruby-progressbar (1.7.5)
|
||||
rubyzip (1.1.7)
|
||||
selenium-webdriver (2.47.1)
|
||||
selenium-webdriver (2.48.1)
|
||||
childprocess (~> 0.5)
|
||||
multi_json (~> 1.0)
|
||||
rubyzip (~> 1.0)
|
||||
websocket (~> 1.0)
|
||||
syntax (1.2.0)
|
||||
thor (0.19.1)
|
||||
unf (0.1.4)
|
||||
unf_ext
|
||||
unf_ext (0.0.7.1)
|
||||
watir-webdriver (0.8.0)
|
||||
watir-webdriver (0.9.1)
|
||||
selenium-webdriver (>= 2.46.2)
|
||||
websocket (1.2.2)
|
||||
yml_reader (0.5)
|
||||
@@ -93,5 +97,5 @@ PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
mediawiki_selenium (~> 0.4.2)
|
||||
mediawiki_selenium (~> 1.6.2)
|
||||
rubocop (~> 0.29.1)
|
||||
|
||||
39
tests/browser/environments.yml
Normal file
39
tests/browser/environments.yml
Normal file
@@ -0,0 +1,39 @@
|
||||
# Customize this configuration as necessary to provide defaults for various
|
||||
# test environments.
|
||||
#
|
||||
# The set of defaults to use is determined by the MEDIAWIKI_ENVIRONMENT
|
||||
# environment variable.
|
||||
#
|
||||
# export MEDIAWIKI_ENVIRONMENT=mw-vagrant-host
|
||||
# bundle exec cucumber
|
||||
#
|
||||
# Additional variables set by the environment will override the corresponding
|
||||
# defaults defined here.
|
||||
#
|
||||
# export MEDIAWIKI_ENVIRONMENT=mw-vagrant-host
|
||||
# export MEDIAWIKI_USER=Selenium_user2
|
||||
# bundle exec cucumber
|
||||
#
|
||||
mw-vagrant-host: &default
|
||||
user_factory: true
|
||||
mediawiki_url: http://127.0.0.1:8080/wiki/
|
||||
|
||||
mw-vagrant-guest:
|
||||
user_factory: true
|
||||
mediawiki_url: http://127.0.0.1/wiki/
|
||||
|
||||
beta:
|
||||
mediawiki_url: http://en.wikipedia.beta.wmflabs.org/wiki/
|
||||
mediawiki_user: Selenium_user
|
||||
# mediawiki_password: SET THIS IN THE ENVIRONMENT!
|
||||
|
||||
test2:
|
||||
mediawiki_url: http://test2.wikipedia.org/wiki/
|
||||
mediawiki_user: Selenium_user
|
||||
# mediawiki_password: SET THIS IN THE ENVIRONMENT!
|
||||
|
||||
integration:
|
||||
user_factory: true
|
||||
# mediawiki_url: THIS WILL BE SET BY JENKINS
|
||||
|
||||
default: *default
|
||||
@@ -1,6 +1,6 @@
|
||||
Given(/^that my browser's accept language is (.+)$/) do |language|
|
||||
@browser = browser(test_name(@scenario), {language: language})
|
||||
$session_id = @browser.driver.instance_variable_get(:@bridge).session_id
|
||||
browser = browser(test_name(@scenario), {language: language})
|
||||
$session_id = browser.driver.instance_variable_get(:@bridge).session_id
|
||||
end
|
||||
|
||||
When(/^I am at the preferences page$/) do
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
Given(/^I am on a wiki in Kotava language$/) do
|
||||
step "I am at the main page"
|
||||
# Fake a Kotava Wiki
|
||||
@browser.execute_script( "mw.config.set( 'wgContentLanguage', 'avk' )" )
|
||||
browser.execute_script( "mw.config.set( 'wgContentLanguage', 'avk' )" )
|
||||
end
|
||||
|
||||
When(/^I click on an input box$/) do
|
||||
@@ -55,7 +55,7 @@ When(/^I press Control-M$/) do
|
||||
end
|
||||
|
||||
When(/^I reload the page$/) do
|
||||
@browser.refresh
|
||||
browser.refresh
|
||||
end
|
||||
|
||||
Then(/^in it there must be an element with Malayalam text$/) do
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
Then(/^I see "(.*?)" as the name of the content language$/) do |text|
|
||||
@browser.span(:text => "#{text}").should be_visible
|
||||
browser.span(:text => "#{text}").should be_visible
|
||||
end
|
||||
|
||||
When(/^I open the Universal Language Selector$/) do
|
||||
|
||||
@@ -1 +1,3 @@
|
||||
require "mediawiki_selenium"
|
||||
require 'mediawiki_selenium/cucumber'
|
||||
require 'mediawiki_selenium/pages'
|
||||
require 'mediawiki_selenium/step_definitions'
|
||||
|
||||
@@ -2,8 +2,7 @@ class IMEPage
|
||||
include PageObject
|
||||
include LanguageModule
|
||||
|
||||
include URL
|
||||
page_url URL.url("?<%=params[:extra]%>")
|
||||
page_url "?<%=params[:extra]%>"
|
||||
|
||||
div(:input_method, class: "imeselector imeselector-toggle")
|
||||
a(:input_method_enabled, class: "ime-name imeselector-toggle")
|
||||
@@ -16,7 +15,7 @@ class IMEPage
|
||||
text_field(:search_input, id: "searchInput")
|
||||
|
||||
def ime_input_method_menu_onscreen?
|
||||
@browser.execute_script( "
|
||||
browser.execute_script( "
|
||||
var $selectorMenu = $( '.imeselector-menu' ),
|
||||
menuLeft = $selectorMenu.offset().left,
|
||||
menuRight = menuLeft + $selectorMenu.width();
|
||||
|
||||
@@ -2,9 +2,5 @@ class InterlanguagePage
|
||||
include PageObject
|
||||
include InterlanguagePageModule
|
||||
|
||||
include URL
|
||||
def self.url
|
||||
URL.url("Boleyn_family")
|
||||
end
|
||||
page_url url
|
||||
page_url "Boleyn_family"
|
||||
end
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
class MainPage
|
||||
include PageObject
|
||||
|
||||
include URL
|
||||
page_url URL.url("Main_Page")
|
||||
page_url "Main_Page"
|
||||
|
||||
span(:cog, title: "Language settings")
|
||||
a(:create_a_book, text: "Create a book")
|
||||
@@ -18,7 +17,7 @@ class MainPage
|
||||
button(:search_button, id: "searchButton")
|
||||
|
||||
def non_interlanguage_links_use_autonym_font?
|
||||
@browser.elements(css: "#p-lang li:not(.interlanguage-link)").collect do |element|
|
||||
browser.elements(css: "#p-lang li:not(.interlanguage-link)").collect do |element|
|
||||
element.style("font-family")
|
||||
end.to_s.match(/Autonym/) != nil
|
||||
end
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
class NoInterlanguagePage
|
||||
include PageObject
|
||||
|
||||
include URL
|
||||
def self.url
|
||||
URL.url("Think_Like_a_Cat")
|
||||
end
|
||||
page_url url
|
||||
page_url "Think_Like_a_Cat"
|
||||
|
||||
include InterlanguagePageModule
|
||||
end
|
||||
|
||||
@@ -2,8 +2,7 @@ class PanelPage
|
||||
include PageObject
|
||||
include LanguageModule
|
||||
|
||||
include URL
|
||||
page_url URL.url("?<%=params[:extra]%>")
|
||||
page_url "?<%=params[:extra]%>"
|
||||
|
||||
div(:uls, class: "uls-menu")
|
||||
span(:uls_button_close, id: "uls-close")
|
||||
@@ -48,7 +47,7 @@ class PanelPage
|
||||
div(:interface, id: "footer")
|
||||
|
||||
def uls_language_name_item(language)
|
||||
@browser.element(css: ".uls-language-block li[lang=#{language}] a")
|
||||
browser.element(css: ".uls-language-block li[lang=#{language}] a")
|
||||
end
|
||||
|
||||
def content_font
|
||||
@@ -60,7 +59,7 @@ class PanelPage
|
||||
end
|
||||
|
||||
def uls_onscreen?
|
||||
@browser.execute_script( "
|
||||
browser.execute_script( "
|
||||
var $menu = $( '.uls-menu' ),
|
||||
$window = $( window ),
|
||||
top = $menu.offset().top,
|
||||
@@ -71,11 +70,11 @@ class PanelPage
|
||||
end
|
||||
|
||||
def webfonts_library_loaded
|
||||
@browser.execute_script( "return ( $( 'body' ).data( 'webfonts' ) !== undefined )" )
|
||||
browser.execute_script( "return ( $( 'body' ).data( 'webfonts' ) !== undefined )" )
|
||||
end
|
||||
|
||||
private
|
||||
def font(selector)
|
||||
@browser.execute_script( "return $( '#{selector}' ).css( 'font-family' );" )
|
||||
browser.execute_script( "return $( '#{selector}' ).css( 'font-family' );" )
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
class PreferencesPage
|
||||
include PageObject
|
||||
|
||||
include URL
|
||||
page_url URL.url("Special:Preferences")
|
||||
page_url "Special:Preferences"
|
||||
|
||||
select(:set_interface_language, id: "mw-input-wplanguage")
|
||||
button(:save, id: "prefcontrol")
|
||||
|
||||
Reference in New Issue
Block a user