diff --git a/functional_tests/features/configuration.feature b/functional_tests/features/configuration.feature index 134972f79..bd4794ba0 100644 --- a/functional_tests/features/configuration.feature +++ b/functional_tests/features/configuration.feature @@ -29,23 +29,3 @@ Scenario: Change hostname Scenario: Change domain name When I change the domain name to mydomain Then the domain name should be mydomain - -Scenario Outline: Change language - When I change the language to - Then Plinth language should be - - Examples: - | language | - | Danish | - | German | - | Spanish | - | French | - | Norwegian Bokmål | - | Dutch | - | Polish | - | Portuguese | - | Russian | - | Swedish | - | Telugu | - | Turkish | - | Simplified Chinese | diff --git a/functional_tests/features/users_and_groups.feature b/functional_tests/features/users_and_groups.feature index e7b56ac4a..48d094d6b 100644 --- a/functional_tests/features/users_and_groups.feature +++ b/functional_tests/features/users_and_groups.feature @@ -38,3 +38,23 @@ Scenario: Delete user Given the user alice exists When I delete the user alice Then alice should not be listed as a user + +Scenario Outline: Change language + When I change the language to + Then Plinth language should be + + Examples: + | language | + | dansk | + | Deutsch | + | español | + | français | + | norsk (bokmål) | + | Nederlands | + | polski | + | Português | + | Русский | + | svenska | + | తెలుగు | + | Türkçe | + | 简体中文 | diff --git a/functional_tests/step_definitions/system.py b/functional_tests/step_definitions/system.py index 170f2b0cc..316b45ffe 100644 --- a/functional_tests/step_definitions/system.py +++ b/functional_tests/step_definitions/system.py @@ -20,19 +20,19 @@ from pytest_bdd import given, parsers, then, when from support import system language_codes = { - 'Danish': 'da', - 'German': 'de', - 'Spanish': 'es', - 'French': 'fr', - 'Norwegian Bokmål': 'nb', - 'Dutch': 'nl', - 'Polish': 'pl', - 'Portuguese': 'pt', - 'Russian': 'ru', - 'Swedish': 'sv', - 'Telugu': 'te', - 'Turkish': 'tr', - 'Simplified Chinese': 'zh-hans', + 'Deutsch': 'de', + 'Nederlands': 'nl', + 'Português': 'pt', + 'Türkçe': 'tr', + 'dansk': 'da', + 'español': 'es', + 'français': 'fr', + 'norsk (bokmål)': 'nb', + 'polski': 'pl', + 'svenska': 'sv', + 'Русский': 'ru', + 'తెలుగు': 'te', + '简体中文': 'zh-hans' } diff --git a/functional_tests/support/interface.py b/functional_tests/support/interface.py index 46abb363f..2c3505c82 100644 --- a/functional_tests/support/interface.py +++ b/functional_tests/support/interface.py @@ -41,7 +41,7 @@ def login(browser, url, username, password): else: browser.visit(default_url + '/plinth/firstboot/welcome') browser.find_by_value('Start Setup').click() - create_admin_account(browser, 'tester', 'testingtesting') + create_admin_account(browser, username, 'testingtesting') login(browser, url, username, password) diff --git a/functional_tests/support/system.py b/functional_tests/support/system.py index 53406834c..3bfac455c 100644 --- a/functional_tests/support/system.py +++ b/functional_tests/support/system.py @@ -59,12 +59,12 @@ def set_domain_name(browser, domain_name): def set_language(browser, language_code): - nav_to_module(browser, 'config') - browser.find_by_xpath( - '//select[@id="id_configuration-language"]//option[@value="' \ - + language_code + '"]' - ).first.click() - submit(browser) + username = config['DEFAULT']['username'] + browser.visit(config['DEFAULT']['url'] + + '/plinth/sys/users/{}/edit/'.format(username)) + browser.find_by_xpath('//select[@id="id_language"]//option[@value="' + + language_code + '"]').first.click() + browser.find_by_css('input[type=submit]').click() def check_language(browser, language_code):