Zfilipin has uploaded a new change for review. https://gerrit.wikimedia.org/r/245863
Change subject: WIP Update mediawiki_selenium Ruby gem to version 1.x ...................................................................... WIP Update mediawiki_selenium Ruby gem to version 1.x WIP because of this: undefined local variable or method `api' for ./features/support/pages/red_link_page.rb:26:in `create_page' Bug: T115319 Change-Id: I7e66f40608f3db32538ef9b6290a3609022f3865 --- M Gemfile M Gemfile.lock A tests/browser/environments.yml M tests/browser/features/support/env.rb M tests/browser/features/support/pages/anon_error_page.rb M tests/browser/features/support/pages/content_translation_page.rb M tests/browser/features/support/pages/red_link_page.rb M tests/browser/features/support/pages/translated_page.rb M tests/browser/features/support/pages/translated_page_history.rb 9 files changed, 76 insertions(+), 42 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/ContentTranslation refs/changes/63/245863/1 diff --git a/Gemfile b/Gemfile index f8d25c5..1dc823e 100755 --- a/Gemfile +++ b/Gemfile @@ -1,7 +1,6 @@ source 'https://rubygems.org' -gem 'commons_upload', '~> 0.0.3' -gem 'mediawiki_api', '~> 0.3.1' -gem 'mediawiki_selenium', '~> 0.4.2' +gem 'commons_upload', '~> 0.0.4' +gem 'mediawiki_selenium', '~> 1.6.0' gem 'rubocop', '~> 0.34.2', require: false gem 'screenshot', '~> 0.0.6' diff --git a/Gemfile.lock b/Gemfile.lock index 841a208..ff8ea82 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -8,8 +8,8 @@ childprocess (0.5.6) ffi (~> 1.0, >= 1.0.11) chunky_png (1.3.4) - commons_upload (0.0.3) - mediawiki_api (~> 0.3.0) + commons_upload (0.0.4) + mediawiki_api (~> 0.4, >= 0.4.1) cucumber (1.3.20) builder (>= 2.1.2) diff-lcs (>= 1.1.3) @@ -20,11 +20,11 @@ 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) @@ -32,23 +32,25 @@ 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) json (1.8.3) - mediawiki_api (0.3.1) + 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.1) + 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) @@ -68,6 +70,7 @@ 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.34.2) @@ -80,16 +83,17 @@ rubyzip (1.1.7) screenshot (0.0.7) chunky_png (~> 1.3.3) - selenium-webdriver (2.47.1) + selenium-webdriver (2.48.0) 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.0) selenium-webdriver (>= 2.46.2) websocket (1.2.2) yml_reader (0.5) @@ -98,8 +102,7 @@ ruby DEPENDENCIES - commons_upload (~> 0.0.3) - mediawiki_api (~> 0.3.1) - mediawiki_selenium (~> 0.4.2) + commons_upload (~> 0.0.4) + mediawiki_selenium (~> 1.6.0) rubocop (~> 0.34.2) screenshot (~> 0.0.6) diff --git a/tests/browser/environments.yml b/tests/browser/environments.yml new file mode 100644 index 0000000..35eb153 --- /dev/null +++ b/tests/browser/environments.yml @@ -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 diff --git a/tests/browser/features/support/env.rb b/tests/browser/features/support/env.rb index be94f33..aaaa026 100644 --- a/tests/browser/features/support/env.rb +++ b/tests/browser/features/support/env.rb @@ -1,3 +1,4 @@ -require 'mediawiki_selenium' -require 'mediawiki_api' +require 'mediawiki_selenium/cucumber' +require 'mediawiki_selenium/pages' +require 'mediawiki_selenium/step_definitions' require 'screenshot' diff --git a/tests/browser/features/support/pages/anon_error_page.rb b/tests/browser/features/support/pages/anon_error_page.rb index 26b88ed..32caf62 100644 --- a/tests/browser/features/support/pages/anon_error_page.rb +++ b/tests/browser/features/support/pages/anon_error_page.rb @@ -1,6 +1,5 @@ class AnonErrorPage include PageObject - include URL div(:content_text, id: 'mw-content-text') end diff --git a/tests/browser/features/support/pages/content_translation_page.rb b/tests/browser/features/support/pages/content_translation_page.rb index 0980ca7..26436bb 100644 --- a/tests/browser/features/support/pages/content_translation_page.rb +++ b/tests/browser/features/support/pages/content_translation_page.rb @@ -1,7 +1,7 @@ class ContentTranslationPage include PageObject - include URL - page_url URL.url('Special:ContentTranslation?<%=params[:extra]%>') + + page_url ('Special:ContentTranslation?<%=params[:extra]%>') a(:user_name, class: 'cx-header__user-details__user-name') @@ -21,7 +21,7 @@ # so we use JavaScript. # The element is selected by a jQuery selector. def set_element_text(selector, text) - @browser.execute_script("$( '#{selector}' ).text( '#{text}' )") + browser.execute_script("$( '#{selector}' ).text( '#{text}' )") end def empty_translation_editor @@ -31,7 +31,7 @@ end def column(column_type) - @browser.div(class: "cx-column--#{column_type}") + browser.div(class: "cx-column--#{column_type}") end def language_label(column_type) diff --git a/tests/browser/features/support/pages/red_link_page.rb b/tests/browser/features/support/pages/red_link_page.rb index b4e4419..fbc940f 100644 --- a/tests/browser/features/support/pages/red_link_page.rb +++ b/tests/browser/features/support/pages/red_link_page.rb @@ -1,8 +1,7 @@ class RedLinkPage include PageObject - include URL - page_url URL.url('Red interlanguage link test') + page_url ('Red interlanguage link test') button(:translate_from, class: 'cx-entrypoint-dialog-button-translate-from') button(:create_from_scratch, class: 'cx-entrypoint-dialog-button-create-from-scratch') @@ -24,31 +23,25 @@ text_field(:language_filter, id: 'languagefilter') def create_page(text) - if ENV['MEDIAWIKI_API_URL'].nil? - abort 'Environment variable MEDIAWIKI_API_URL must be set' - end - - client = MediawikiApi::Client.new(ENV['MEDIAWIKI_API_URL']) - client.log_in(ENV['MEDIAWIKI_USER'], ENV['MEDIAWIKI_PASSWORD']) - client.create_page('Red interlanguage link test', text) + api.create_page('Red interlanguage link test', text) end def blue_interlanguage_item_with_autonym(autonym) - @browser.li(class: 'interlanguage-link', text: autonym) + browser.li(class: 'interlanguage-link', text: autonym) end def dialog_close_button - @browser.span(css: '.cx-entrypoint-dialog:not(.hidden) .icon-close') + browser.span(css: '.cx-entrypoint-dialog:not(.hidden) .icon-close') end def page_creation_dialog(autonym) codes = { 'Nederlands' => 'nl' } - @browser.div(id: "cx-entrypoint-dialog-#{codes[autonym]}") + browser.div(id: "cx-entrypoint-dialog-#{codes[autonym]}") end def red_interlanguage_item_with_autonym(autonym) - @browser.li(class: 'cx-new-interlanguage-link', text: autonym) + browser.li(class: 'cx-new-interlanguage-link', text: autonym) end end diff --git a/tests/browser/features/support/pages/translated_page.rb b/tests/browser/features/support/pages/translated_page.rb index 5769046..d5a0586 100644 --- a/tests/browser/features/support/pages/translated_page.rb +++ b/tests/browser/features/support/pages/translated_page.rb @@ -1,7 +1,7 @@ class TranslatedPage include PageObject - include URL - page_url URL.url('User:TranslatorToDa/Bratislava') + + page_url ('User:TranslatorToDa/Bratislava') div(:content_text, id: 'mw-content-text') h1(:first_heading, id: 'firstHeading') diff --git a/tests/browser/features/support/pages/translated_page_history.rb b/tests/browser/features/support/pages/translated_page_history.rb index ba8757c..268b1e9 100644 --- a/tests/browser/features/support/pages/translated_page_history.rb +++ b/tests/browser/features/support/pages/translated_page_history.rb @@ -1,7 +1,7 @@ class TranslatedPageHistory include PageObject - include URL - page_url URL.url('User:TranslatorToDa/Bratislava?action=history') + + page_url ('User:TranslatorToDa/Bratislava?action=history') span(:contenttranslation_tag, class: 'mw-tag-marker-contenttranslation') end -- To view, visit https://gerrit.wikimedia.org/r/245863 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I7e66f40608f3db32538ef9b6290a3609022f3865 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/ContentTranslation Gerrit-Branch: master Gerrit-Owner: Zfilipin <zfili...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits