Jakob has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/383558 )
Change subject: Add browser tests for editable lexeme language and lexical category. ...................................................................... Add browser tests for editable lexeme language and lexical category. Change-Id: I613ea8c4955d424f54a151838e8a59d66afd50f3 --- A tests/browser/features/lexeme_header.feature A tests/browser/features/step_definitions/lexeme_header_steps.rb M tests/browser/features/support/pages/lexeme_page.rb 3 files changed, 69 insertions(+), 0 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/WikibaseLexeme refs/changes/58/383558/1 diff --git a/tests/browser/features/lexeme_header.feature b/tests/browser/features/lexeme_header.feature new file mode 100644 index 0000000..e2d6550 --- /dev/null +++ b/tests/browser/features/lexeme_header.feature @@ -0,0 +1,25 @@ +@chrome @firefox @internet_explorer_10 @internet_explorer_11 @local_config @test.wikidata.org @wikidata.beta.wmflabs.org +Feature: Lexeme Page Header + +Background: + Given I am on a Lexeme page + And The copyright warning has been dismissed + And Anonymous edit warnings are disabled + + @integration + Scenario: Update lexeme language + Given I have an item to test + When I click the lexeme header edit button + And I enter the test item id into the lexeme language field + And I click the lexeme header save button + And I reload the page + Then I should see the item in the lexeme language field + + @integration + Scenario: Update lexical category + Given I have an item to test + When I click the lexeme header edit button + And I enter the test item id into the lexical category field + And I click the lexeme header save button + And I reload the page + Then I should see the item in the lexical category field diff --git a/tests/browser/features/step_definitions/lexeme_header_steps.rb b/tests/browser/features/step_definitions/lexeme_header_steps.rb new file mode 100644 index 0000000..6be6b5a --- /dev/null +++ b/tests/browser/features/step_definitions/lexeme_header_steps.rb @@ -0,0 +1,30 @@ +When(/^I click the lexeme header edit button$/) do + on(LexemePage).lexeme_header.edit_element.when_visible.click +end + +When(/^I enter the test item id into the lexeme language field$/) do + on(LexemePage).lexeme_header.lexeme_language_input = @item_under_test['id'] +end + +When(/^I click the lexeme header save button$/) do + on(LexemePage).lexeme_header.save_element.when_visible.click + Watir::Wait.until(timeout = 5) do + on(LexemePage).lexeme_header.edit_element.visible? + end +end + +Then(/^I should see the item in the lexeme language field$/) do + expect( + on(LexemePage).lexeme_header.lexeme_language_element.text + ).to eq @item_under_test['id'] +end + +When(/^I enter the test item id into the lexical category field$/) do + on(LexemePage).lexeme_header.lexical_category_input = @item_under_test['id'] +end + +Then(/^I should see the item in the lexical category field$/) do + expect( + on(LexemePage).lexeme_header.lexical_category_element.text + ).to eq @item_under_test['id'] +end diff --git a/tests/browser/features/support/pages/lexeme_page.rb b/tests/browser/features/support/pages/lexeme_page.rb index e254a00..41dc4ce 100644 --- a/tests/browser/features/support/pages/lexeme_page.rb +++ b/tests/browser/features/support/pages/lexeme_page.rb @@ -108,6 +108,19 @@ end +class LexemeHeader + include PageObject + + button(:edit, class: 'lemma-widget_edit') + button(:save, class: 'lemma-widget_save') + + text_field(:lexeme_language_input, id: 'lexeme-language') + text_field(:lexical_category_input, id: 'lexeme-lexical-category') + span(:lexeme_language, class: 'language-lexical-category-widget_language') + span(:lexical_category, class: 'language-lexical-category-widget_lexical-category') +end + + class LexemePage include PageObject include EntityPage @@ -118,6 +131,7 @@ span(:senses_header, id: 'senses') div(:senses_container, class: 'wikibase-lexeme-senses') + page_section(:lexeme_header, LexemeHeader, id: 'wb-lexeme-header') page_sections(:forms, LexemeForm, class: 'wikibase-lexeme-form') page_sections(:senses, Sense, class: 'wikibase-lexeme-sense') -- To view, visit https://gerrit.wikimedia.org/r/383558 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I613ea8c4955d424f54a151838e8a59d66afd50f3 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/WikibaseLexeme Gerrit-Branch: master Gerrit-Owner: Jakob <[email protected]> _______________________________________________ MediaWiki-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
