diff --git a/features/desktop/change_email.feature b/features/desktop/change_settings.feature similarity index 62% rename from features/desktop/change_email.feature rename to features/desktop/change_settings.feature index c13b532752fa0210f49e30da10a7c449da769132..f636e29cefa59101822ebc2deceda1ca793505d7 100644 --- a/features/desktop/change_email.feature +++ b/features/desktop/change_settings.feature @@ -1,10 +1,12 @@ @javascript -Feature: Change email +Feature: Change settings - Scenario: Change my email + Background: Given I am signed in When I go to the edit user page - And I fill in the following: + + Scenario: Change my email + When I fill in the following: | user_email | new_email@newplac.es | And I press "Change email" Then I should see "Email changed" @@ -13,9 +15,13 @@ Feature: Change email And my "email" should be "new_email@newplac.es" Scenario: Change my email preferences - Given I am signed in - When I go to the edit user page - And I uncheck "user_email_preferences_mentioned" + When I uncheck "user_email_preferences_mentioned" And I press "change_email_preferences" Then I should see "Email notifications changed" And the "user_email_preferences_mentioned" checkbox should not be checked + + Scenario: Change my preferred language + When I select "polski" from "user_language" + And I press "Change language" + Then I should see "Język został zmieniony" + And "polski" should be selected from "user_language" diff --git a/features/step_definitions/web_steps.rb b/features/step_definitions/web_steps.rb index 7c8da90545df29c31607f2f81e4f14caa65d08d2..74c1d0b4264fbee8c47d27767c3e8c4b28053231 100644 --- a/features/step_definitions/web_steps.rb +++ b/features/step_definitions/web_steps.rb @@ -160,6 +160,12 @@ Then /^the "([^"]*)" checkbox(?: within "([^"]*)")? should not be checked$/ do | end end +Then /^"([^"]*)" should be selected from "([^"]*)"(?: within "([^"]*)")?$/ do |value, field, selector| + with_scope(selector) do + expect(page).to have_select(field, selected: value) + end +end + Then /^the "([^"]*)" bootstrap-switch should be (on|off)$/ do |label, state| if state == "on" expect(page.evaluate_script("$('#{label}').bootstrapSwitch('state')")).to be_truthy