summaryrefslogtreecommitdiff
path: root/service/test/functional/features/steps
diff options
context:
space:
mode:
authorTulio Casagrande <tcasagra@thoughtworks.com>2017-04-12 17:14:51 -0300
committerTulio Casagrande <tcasagra@thoughtworks.com>2017-04-12 17:22:25 -0300
commitcab44227c133af60a31f1988939cbeca5a865efd (patch)
tree5e7f2fcc6160c65243bad345066e9619a62d4393 /service/test/functional/features/steps
parenteb811d8d5d767be45038806e0effdd63510bda3a (diff)
[#927] Confirm email with the recovery code
with @deniscostadsc
Diffstat (limited to 'service/test/functional/features/steps')
-rw-r--r--service/test/functional/features/steps/backup_account.py2
-rw-r--r--service/test/functional/features/steps/common.py4
-rw-r--r--service/test/functional/features/steps/login.py1
-rw-r--r--service/test/functional/features/steps/mail_list.py24
-rw-r--r--service/test/functional/features/steps/mail_view.py9
5 files changed, 20 insertions, 20 deletions
diff --git a/service/test/functional/features/steps/backup_account.py b/service/test/functional/features/steps/backup_account.py
index 56d30211..5a1052a8 100644
--- a/service/test/functional/features/steps/backup_account.py
+++ b/service/test/functional/features/steps/backup_account.py
@@ -29,7 +29,7 @@ def backup_account_page(context):
@when(u'I submit my backup account')
def submit_backup_email(context):
- fill_by_css_selector(context, 'input[name="email"]', 'test@test.com')
+ fill_by_css_selector(context, 'input[name="email"]', context.user_email)
find_element_by_css_selector(context, '.submit-button button[type="submit"]').click()
diff --git a/service/test/functional/features/steps/common.py b/service/test/functional/features/steps/common.py
index 3e1e995e..ff6e6166 100644
--- a/service/test/functional/features/steps/common.py
+++ b/service/test/functional/features/steps/common.py
@@ -146,10 +146,6 @@ def click_button(context, title, element='button'):
button.click()
-def mail_list_with_subject_exists(context, subject):
- return find_element_by_xpath(context, "//*[@class='mail-list-entry__item-subject' and contains(.,'%s')]" % subject)
-
-
def reply_subject(context):
e = find_element_by_css_selector(context, '#reply-subject')
return e.text
diff --git a/service/test/functional/features/steps/login.py b/service/test/functional/features/steps/login.py
index 35bb5ca2..7360adb7 100644
--- a/service/test/functional/features/steps/login.py
+++ b/service/test/functional/features/steps/login.py
@@ -56,6 +56,7 @@ def see_interstitial(context):
find_element_by_css_selector(context, 'section#hive-section')
+@then(u'I logout')
@when(u'I logout')
def click_logout(context):
find_element_by_css_selector(context, '#logout-form div').click()
diff --git a/service/test/functional/features/steps/mail_list.py b/service/test/functional/features/steps/mail_list.py
index 227aa9ed..2953c1af 100644
--- a/service/test/functional/features/steps/mail_list.py
+++ b/service/test/functional/features/steps/mail_list.py
@@ -17,13 +17,12 @@
from behave import when, then, given
from selenium.common.exceptions import TimeoutException
+from ..page_objects import InboxPage
from common import (
ImplicitWait,
- execute_ignoring_staleness,
find_element_by_id,
find_element_by_css_selector,
find_elements_by_css_selector,
- mail_list_with_subject_exists,
wait_for_condition,
wait_for_loading_to_finish)
@@ -42,10 +41,6 @@ def open_current_mail(context):
e.click()
-def get_first_email(context):
- return find_element_by_css_selector(context, '.mail-list-entry__item')
-
-
@then('I see that mail under the \'{tag}\' tag')
def impl(context, tag):
context.execute_steps("when I select the tag '%s'" % tag)
@@ -59,9 +54,12 @@ def impl(context):
@when('I open the first mail in the mail list')
def impl(context):
- # it seems page is often still loading so staleness exceptions happen often
- context.current_mail_id = 'mail-' + execute_ignoring_staleness(lambda: get_first_email(context).get_attribute('href').split('/')[-1])
- execute_ignoring_staleness(lambda: get_first_email(context).click())
+ InboxPage(context).open_first_mail_in_the_mail_list()
+
+
+@when('I open the mail with the recovery code')
+def impl(context):
+ InboxPage(context).open_mail_with_the_recovery_code()
@when('I open the first mail in the \'{tag}\'')
@@ -83,7 +81,7 @@ def impl(context):
@then('the deleted mail is there')
def impl(context):
- mail_list_with_subject_exists(context, context.last_subject)
+ InboxPage(context).get_mail_with_subject(context.last_subject)
@given('I have mails')
@@ -140,3 +138,9 @@ def impl(context):
@then('I should not see any email')
def impl(context):
_wait_for_mail_list_to_be_empty(context)
+
+
+@then(u'I see the mail has the recovery code')
+def step_impl(context):
+ expected_body = 'Your code'
+ context.execute_steps(u"Then I see that the body has '%s'" % expected_body)
diff --git a/service/test/functional/features/steps/mail_view.py b/service/test/functional/features/steps/mail_view.py
index 65959b70..89464245 100644
--- a/service/test/functional/features/steps/mail_view.py
+++ b/service/test/functional/features/steps/mail_view.py
@@ -17,6 +17,7 @@
from behave import then, when
from selenium.webdriver.common.keys import Keys
+from ..page_objects import InboxPage
from common import (
click_button,
find_element_by_css_selector,
@@ -32,12 +33,10 @@ def impl(context, subject):
@then('I see that the body reads \'{expected_body}\'')
+@then('I see that the body has \'{expected_body}\'')
def impl(context, expected_body):
- find_element_by_css_selector(context, '#read-sandbox')
- context.browser.switch_to_frame('read-sandbox')
- e = find_element_by_css_selector(context, 'body')
- assert e.text == expected_body
- context.browser.switch_to_default_content()
+ actual_body = InboxPage(context).get_body_message()
+ assert expected_body in actual_body
@then('that email has the \'{tag}\' tag')