diff options
author | Folker Bernitt <fbernitt@thoughtworks.com> | 2016-01-27 13:56:41 +0100 |
---|---|---|
committer | Folker Bernitt <fbernitt@thoughtworks.com> | 2016-01-27 13:57:26 +0100 |
commit | e66b356f900bc9899a5506378163ffaadd4a32b5 (patch) | |
tree | 1f7d06ac3c23a274f91c6e706afcc1615ded2397 /service/test/functional/features/steps/login.py | |
parent | 32dce59ce1aa32846948148fafaffb190206477e (diff) |
Add a login multi user functional test
- Issue #576
- Extended AppTestClient with multi user support
Diffstat (limited to 'service/test/functional/features/steps/login.py')
-rw-r--r-- | service/test/functional/features/steps/login.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/service/test/functional/features/steps/login.py b/service/test/functional/features/steps/login.py new file mode 100644 index 00000000..3c80e819 --- /dev/null +++ b/service/test/functional/features/steps/login.py @@ -0,0 +1,34 @@ +# +# Copyright (c) 2016 ThoughtWorks, Inc. +# +# Pixelated is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Pixelated is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with Pixelated. If not, see <http://www.gnu.org/licenses/>. +from behave import when, then +from common import * + + +@when(u'I open the login page') +def login_page(context): + context.browser.get(MULTI_USER_URL + '/login') + + +@when(u'I enter {username} and {password} as credentials') +def enter_credentials(context, username, password): + fill_by_css_selector(context, 'input#email', username) + fill_by_css_selector(context, 'input#password', password) + + +@when(u'I click on the login button') +def click_login(context): + login_button = wait_until_element_is_visible_by_locator(context, (By.CSS_SELECTOR, 'input[name="login"]')) + login_button.click() |