diff options
| author | Tulio Casagrande <tcasagra@thoughtworks.com> | 2016-11-30 19:11:57 -0200 | 
|---|---|---|
| committer | Tulio Casagrande <tcasagra@thoughtworks.com> | 2016-11-30 19:25:23 -0200 | 
| commit | 8372b0127343df96cbe1ca33477ea0f197a873be (patch) | |
| tree | b052911125e6cd3036a650c97a510152a3147797 | |
| parent | a8a7362054f4b49ea1fbc00fe7b556e6e6ea4590 (diff) | |
Add username to behave context
See: https://github.com/pixelated/project-issues/issues/381
| -rw-r--r-- | service/test/functional/features/environment.py | 3 | ||||
| -rw-r--r-- | service/test/functional/features/smoke.feature | 3 | ||||
| -rw-r--r-- | service/test/functional/features/steps/login.py | 13 | ||||
| -rw-r--r-- | service/test/functional/features/steps/signup.py | 3 | 
4 files changed, 11 insertions, 11 deletions
diff --git a/service/test/functional/features/environment.py b/service/test/functional/features/environment.py index efbf3412..b51323fa 100644 --- a/service/test/functional/features/environment.py +++ b/service/test/functional/features/environment.py @@ -17,6 +17,7 @@ import os  import re  import time  from urlparse import urlparse +import uuid  from crochet import setup, wait_for  from leap.common.events.server import ensure_server @@ -52,10 +53,12 @@ def before_all(context):      hostname = urlparse(context.host).hostname      context.signup_url = 'https://{}/signup'.format(hostname)      context.login_url = 'https://mail.{}/login'.format(hostname) +    context.username = 'testuser_{}'.format(uuid.uuid4())      if 'localhost' in context.host:          _mock_user_agent(context)          context.login_url = context.multi_user_url + '/login' +        context.username = 'username'  def _mock_user_agent(context): diff --git a/service/test/functional/features/smoke.feature b/service/test/functional/features/smoke.feature index 3a9378e4..1839539e 100644 --- a/service/test/functional/features/smoke.feature +++ b/service/test/functional/features/smoke.feature @@ -28,8 +28,7 @@ Feature: sign up, login and logout    Scenario: Existing user logs into his account      Given a user is accessing the login page -    #And I have a mail for username in my inbox -    And I enter username and password as credentials +    When I enter username and password as credentials      And I click on the login button      Then I should see the fancy interstitial      Then I have mails diff --git a/service/test/functional/features/steps/login.py b/service/test/functional/features/steps/login.py index a8db6f49..e773c0b1 100644 --- a/service/test/functional/features/steps/login.py +++ b/service/test/functional/features/steps/login.py @@ -15,15 +15,14 @@  # along with Pixelated. If not, see <http://www.gnu.org/licenses/>.  import time -from behave import when, then -from selenium.webdriver.common.by import By +from behave import given, when, then  from common import (      fill_by_css_selector, -    find_element_by_css_selector, -    wait_until_element_is_visible_by_locator) +    find_element_by_css_selector) +@given(u'a user is accessing the login page')  @when(u'I open the login page')  def login_page(context):      context.browser.get(context.login_url) @@ -31,13 +30,13 @@ def login_page(context):  @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#email', context.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 = find_element_by_css_selector(context, 'input[name="login"]')      login_button.click() @@ -53,7 +52,7 @@ def _wait_for_interstitial_to_reload():  @when(u'I logout')  def click_logout(context): -    logout_button = wait_until_element_is_visible_by_locator(context, (By.CSS_SELECTOR, 'ul#logout')) +    logout_button = find_element_by_css_selector(context, 'ul#logout')      logout_button.click() diff --git a/service/test/functional/features/steps/signup.py b/service/test/functional/features/steps/signup.py index 1558004b..43480666 100644 --- a/service/test/functional/features/steps/signup.py +++ b/service/test/functional/features/steps/signup.py @@ -14,7 +14,6 @@  # You should have received a copy of the GNU Affero General Public License  # along with Pixelated. If not, see <http://www.gnu.org/licenses/>. -import uuid  from behave import given, then, when  from common import ( @@ -30,7 +29,7 @@ def step_impl(context):  @when(u'I enter username, password and password confirmation')  # noqa  def step_impl(context): -    fill_by_css_selector(context, '#srp_username', 'testuser_{}'.format(uuid.uuid4())) +    fill_by_css_selector(context, '#srp_username', context.username)      fill_by_css_selector(context, '#srp_password', 'password')      fill_by_css_selector(context, '#srp_password_confirmation', 'password')  | 
