class TestSetupActiveSync(GaiaTestCase):
    def setUp(self):
        try:
            self.testvars['email']['ActiveSync']
        except KeyError:
            raise SkipTest('account details not present in test variables')

        GaiaTestCase.setUp(self)
        self.connect_to_network()

    def test_setup_active_sync_email(self):
        # setup ActiveSync account

        self.email = Email(self.marionette)
        self.email.launch()

        self.email.setup_active_sync_email(
            self.testvars['email']['ActiveSync'])

        # check header area
        self.assertTrue(self.email.header.is_compose_visible)
        self.assertTrue(self.email.header.is_menu_visible)
        self.assertEqual(self.email.header.label, 'Inbox')

        # check toolbar area
        self.assertTrue(self.email.toolbar.is_edit_visible)
        self.assertTrue(self.email.toolbar.is_refresh_visible)

        # wait for sync to complete
        self.email.wait_for_emails_to_sync()
    def test_receive_active_sync_email(self):
        # setup ActiveSync account
        email = Email(self.marionette)
        email.launch()

        email.setup_active_sync_email(self.testvars['email']['ActiveSync'])

        # wait for sync to complete
        email.wait_for_emails_to_sync()

        # Touch home button to exit email app
        self.device.touch_home_button()

        # send email to active sync account
        mock_email = MockEmail(
            senders_email=self.testvars['email']['IMAP']['email'],
            recipients_email=self.testvars['email']['ActiveSync']['email'])
        EmailUtil().send(self.testvars['email']['IMAP'], mock_email)

        self.marionette.switch_to_frame()
        system = System(self.marionette)

        # Wait for email notification
        system.wait_for_notification_toaster_displayed(timeout=60)
        system.wait_for_notification_toaster_not_displayed()

        # Expand the notification bar
        system.wait_for_status_bar_displayed()
        utility_tray = system.open_utility_tray()
        utility_tray.wait_for_notification_container_displayed()

        # Assert there is one notification is listed in notifications-container
        notifications = utility_tray.notifications
        self.assertEqual(1, len(notifications), 'Expected one notification.')
        email = notifications[0].tap_notification()

        self.wait_for_condition(
            lambda m: self.apps.displayed_app.name == "E-Mail")
        self.apps.switch_to_displayed_app()

        # check if the sender's email address is fine
        self.assertEqual(
            email.senders_email, mock_email.senders_email,
            'Senders\'s email on the inbox screen is incorrect. '
            'Expected email is %s. Actual email is %s.' %
            (mock_email.senders_email, email.senders_email))

        # check if the subject is fine
        self.assertEqual(
            email.subject, mock_email.subject,
            'Senders\'s email on the inbox scrseen is incorrect. '
            'Expected subject is %s. Actual subject is %s.' %
            (mock_email.subject, email.subject))

        # check if the email message is fine
        self.assertEqual(
            email.body, mock_email.message,
            'Email message on read email screen is incorrect. '
            'Expected message is "%s". Actual message is '
            '"%s".' % (mock_email.message, email.body))
class TestSetupActiveSync(GaiaTestCase):

    def setUp(self):
        try:
            self.testvars['email']['ActiveSync']
        except KeyError:
            raise SkipTest('account details not present in test variables')

        GaiaTestCase.setUp(self)
        self.connect_to_network()

    def test_setup_active_sync_email(self):
        # setup ActiveSync account

        self.email = Email(self.marionette)
        self.email.launch()

        self.email.setup_active_sync_email(
            self.testvars['email']['ActiveSync'])

        # check header area
        self.assertTrue(self.email.header.is_compose_visible)
        self.assertTrue(self.email.header.is_menu_visible)
        self.assertEqual(self.email.header.label, 'Inbox')

        # check toolbar area
        self.assertTrue(self.email.toolbar.is_edit_visible)
        self.assertTrue(self.email.toolbar.is_refresh_visible)

        # wait for sync to complete
        self.email.wait_for_emails_to_sync()
    def test_receive_active_sync_email(self):
        # setup ActiveSync account
        email = Email(self.marionette)
        email.launch()

        email.setup_active_sync_email(
            self.testvars['email']['ActiveSync'])

        # wait for sync to complete
        email.wait_for_emails_to_sync()

        # Touch home button to exit email app
        self.device.touch_home_button()

        # send email to active sync account
        mock_email = MockEmail(senders_email=self.testvars['email']['IMAP']['email'],
                               recipients_email=self.testvars['email']['ActiveSync']['email'])
        EmailUtil().send(self.testvars['email']['IMAP'], mock_email)

        self.marionette.switch_to_frame()

        system = System(self.marionette)

        # Wait for email notification
        system.wait_for_notification_toaster_displayed(timeout=30)
        system.wait_for_notification_toaster_not_displayed()

        # Expand the notification bar
        system.wait_for_status_bar_displayed()
        utility_tray = system.open_utility_tray()

        utility_tray.wait_for_notification_container_displayed()

        # Assert there is one notification is listed in notifications-container
        notifications = utility_tray.notifications
        self.assertEqual(1, len(notifications), 'Expected one notification.')
        email = notifications[0].tap_notification()

        self.apps.switch_to_displayed_app()

        # check if the sender's email address is fine
        self.assertEqual(email.senders_email,
                         mock_email.senders_email,
                         'Senders\'s email on the inbox screen is incorrect. '
                         'Expected email is %s. Actual email is %s.' % (
                             mock_email.senders_email,
                             email.senders_email))

        # check if the subject is fine
        self.assertEqual(email.subject, mock_email.subject,
                         'Senders\'s email on the inbox scrseen is incorrect. '
                         'Expected subject is %s. Actual subject is %s.' % (
                             mock_email.subject, email.subject))

        # check if the email message is fine
        self.assertEqual(email.body, mock_email.message,
                         'Email message on read email screen is incorrect. '
                         'Expected message is "%s". Actual message is '
                         '"%s".' % (mock_email.message,
                                    email.body))
class TestSendActiveSyncEmail(GaiaTestCase):

    def setUp(self):
        GaiaTestCase.setUp(self)
        self.connect_to_network()

        self.email = Email(self.marionette)
        self.email.launch()

        # setup ActiveSync account
        self.email.setup_active_sync_email(
            self.testvars['email']['ActiveSync'])

    def test_send_active_sync_email(self):
        curr_time = repr(time.time()).replace('.', '')
        new_email = self.email.header.tap_compose()

        new_email.type_to(self.testvars['email']['ActiveSync']['email'])
        new_email.type_subject('test email %s' % curr_time)
        new_email.type_body('Lorem ipsum dolor sit amet %s' % curr_time)

        self.email = new_email.tap_send()

        # wait for the email to be sent before we tap refresh
        self.email.wait_for_email('test email %s' % curr_time)

        # assert that the email app subject is in the email list
        self.assertIn('test email %s' % curr_time, [
                      mail.subject for mail in self.email.mails])

        read_email = self.email.mails[0].tap_subject()

        self.assertEqual('Lorem ipsum dolor sit amet %s' %
                         curr_time, read_email.body)
        self.assertEqual('test email %s' % curr_time, read_email.subject)
    def test_receive_active_sync_email(self):
        # setup ActiveSync account
        email = Email(self.marionette)
        email.launch()

        email.setup_active_sync_email(
            self.testvars['email']['ActiveSync'])

        # wait for sync to complete
        email.wait_for_emails_to_sync()

        # send email to active sync account
        mock_email = MockEmail(senders_email=self.testvars['email']['IMAP']['email'],
                               recipients_email=self.testvars['email']['ActiveSync']['email'])
        EmailUtil().send(self.testvars['email']['IMAP'], mock_email)

        # wait for the email to arrive
        email.wait_for_email(mock_email.subject)

        # check if the sender's email address is fine
        self.assertEqual(email.mails[0].senders_email,
                         mock_email.senders_email,
                         'Senders\'s email on the inbox screen is incorrect. '
                         'Expected email is %s. Actual email is %s.' % (
                             mock_email.senders_email,
                             email.mails[0].senders_email))

        # check if the subject is fine
        self.assertEqual(email.mails[0].subject, mock_email.subject,
                         'Senders\'s email on the inbox scrseen is incorrect. '
                         'Expected subject is %s. Actual subject is %s.' % (
                             mock_email.subject, email.mails[0].subject))

        # open the email to read it
        email = email.mails[0].tap_subject()

        # check if the sender's email address is fine
        self.assertEqual(email.senders_email,
                         mock_email.senders_email,
                         'Senders\'s email on the inbox screen is incorrect. '
                         'Expected email is %s. Actual email is %s.' % (
                             mock_email.senders_email,
                             email.senders_email))

        # check if the subject is fine
        self.assertEqual(email.subject, mock_email.subject,
                         'Senders\'s email on the inbox scrseen is incorrect. '
                         'Expected subject is %s. Actual subject is %s.' % (
                             mock_email.subject, email.subject))

        # check if the email message is fine
        self.assertEqual(email.body, mock_email.message,
                         'Email message on read email screen is incorrect. '
                         'Expected message is "%s". Actual message is '
                         '"%s".' % (mock_email.message,
                                    email.body))
Пример #7
0
    def test_receive_active_sync_email(self):
        # setup ActiveSync account
        email = Email(self.marionette)
        email.launch()

        email.setup_active_sync_email(self.testvars['email']['ActiveSync'])

        # wait for sync to complete
        email.wait_for_emails_to_sync()

        # send email to active sync account
        mock_email = MockEmail(
            senders_email=self.testvars['email']['IMAP']['email'],
            recipients_email=self.testvars['email']['ActiveSync']['email'])
        EmailUtil().send(self.testvars['email']['IMAP'], mock_email)

        # wait for the email to arrive
        email.wait_for_email(mock_email.subject)

        # check if the sender's email address is fine
        self.assertEqual(
            email.mails[0].senders_email, mock_email.senders_email,
            'Senders\'s email on the inbox screen is incorrect. '
            'Expected email is %s. Actual email is %s.' %
            (mock_email.senders_email, email.mails[0].senders_email))

        # check if the subject is fine
        self.assertEqual(
            email.mails[0].subject, mock_email.subject,
            'Senders\'s email on the inbox scrseen is incorrect. '
            'Expected subject is %s. Actual subject is %s.' %
            (mock_email.subject, email.mails[0].subject))

        # open the email to read it
        email = email.mails[0].tap_subject()

        # check if the sender's email address is fine
        self.assertEqual(
            email.senders_email, mock_email.senders_email,
            'Senders\'s email on the inbox screen is incorrect. '
            'Expected email is %s. Actual email is %s.' %
            (mock_email.senders_email, email.senders_email))

        # check if the subject is fine
        self.assertEqual(
            email.subject, mock_email.subject,
            'Senders\'s email on the inbox scrseen is incorrect. '
            'Expected subject is %s. Actual subject is %s.' %
            (mock_email.subject, email.subject))

        # check if the email message is fine
        self.assertEqual(
            email.body, mock_email.message,
            'Email message on read email screen is incorrect. '
            'Expected message is "%s". Actual message is '
            '"%s".' % (mock_email.message, email.body))
class TestSetupAndSendActiveSyncEmail(GaiaTestCase):

    def setUp(self):
        try:
            self.account = self.testvars['email']['ActiveSync']
        except KeyError:
            raise SkipTest('account details not present in test variables')

        GaiaTestCase.setUp(self)
        self.connect_to_local_area_network()

        self.email = Email(self.marionette)
        self.email.launch()

    def test_setup_and_send_active_sync_email(self):
        """
        https://moztrap.mozilla.org/manage/case/2474/
        https://moztrap.mozilla.org/manage/case/2475/
        """
        # setup ActiveSync account
        self.email.setup_active_sync_email(self.account)

        # check header area
        self.assertTrue(self.email.header.is_compose_visible)
        self.assertTrue(self.email.header.is_menu_visible)
        self.assertEqual(self.email.header.label, 'Inbox')

        # check toolbar area
        self.assertTrue(self.email.toolbar.is_edit_visible)
        self.assertTrue(self.email.toolbar.is_refresh_visible)

        # wait for sync to complete
        self.email.wait_for_emails_to_sync()

        curr_time = repr(time.time()).replace('.', '')
        _subject = 's%s' % curr_time
        _body = 'b%s' % curr_time
        new_email = self.email.header.tap_compose()

        new_email.type_to(self.testvars['email']['ActiveSync']['email'])
        new_email.type_subject(_subject)
        new_email.type_body(_body)

        self.email = new_email.tap_send()

        # wait for the email to be sent before we tap refresh
        self.email.wait_for_email(_subject)

        # assert that the email app subject is in the email list
        self.assertIn(_subject, [mail.subject for mail in self.email.mails])

        read_email = self.email.mails[0].tap_subject()

        self.assertEqual(_body, read_email.body)
        self.assertEqual(_subject, read_email.subject)
Пример #9
0
class TestSetupAndSendActiveSyncEmail(GaiaTestCase):

    def setUp(self):
        try:
            self.account = self.testvars['email']['ActiveSync']
        except KeyError:
            raise SkipTest('account details not present in test variables')

        GaiaTestCase.setUp(self)
        self.connect_to_network()

        self.email = Email(self.marionette)
        self.email.launch()

    def test_setup_and_send_active_sync_email(self):
        """
        https://moztrap.mozilla.org/manage/case/2474/
        https://moztrap.mozilla.org/manage/case/2475/
        """
        # setup ActiveSync account
        self.email.setup_active_sync_email(self.account)

        # check header area
        self.assertTrue(self.email.header.is_compose_visible)
        self.assertTrue(self.email.header.is_menu_visible)
        self.assertEqual(self.email.header.label, 'Inbox')

        # check toolbar area
        self.assertTrue(self.email.toolbar.is_edit_visible)
        self.assertTrue(self.email.toolbar.is_refresh_visible)

        # wait for sync to complete
        self.email.wait_for_emails_to_sync()

        curr_time = repr(time.time()).replace('.', '')
        _subject = 's%s' % curr_time
        _body = 'b%s' % curr_time
        new_email = self.email.header.tap_compose()

        new_email.type_to(self.testvars['email']['ActiveSync']['email'])
        new_email.type_subject(_subject)
        new_email.type_body(_body)

        self.email = new_email.tap_send()

        # wait for the email to be sent before we tap refresh
        self.email.wait_for_email(_subject)

        # assert that the email app subject is in the email list
        self.assertIn(_subject, [mail.subject for mail in self.email.mails])

        read_email = self.email.mails[0].tap_subject()

        self.assertEqual(_body, read_email.body)
        self.assertEqual(_subject, read_email.subject)
class TestSetupAndSendActiveSyncEmail(GaiaTestCase):
    def setUp(self):
        if not GaiaTestEnvironment(self.testvars).email.get('activesync'):
            raise SkipTest(
                'ActiveSync account details not present in test variables.')

        GaiaTestCase.setUp(self)
        self.connect_to_local_area_network()

        self.email = Email(self.marionette)
        self.email.launch()

    def test_setup_and_send_active_sync_email(self):
        """
        https://moztrap.mozilla.org/manage/case/2474/
        https://moztrap.mozilla.org/manage/case/2475/
        """
        # setup ActiveSync account
        self.email.setup_active_sync_email(
            self.environment.email['activesync'])

        # check header area
        self.assertTrue(self.email.header.is_compose_visible)
        self.assertTrue(self.email.header.is_menu_visible)
        self.assertEqual(self.email.header.label, 'Inbox')

        # check toolbar area
        self.assertTrue(self.email.toolbar.is_edit_visible)
        self.assertTrue(self.email.toolbar.is_refresh_visible)

        # wait for sync to complete
        self.email.wait_for_emails_to_sync()

        curr_time = repr(time.time()).replace('.', '')
        _subject = 's%s' % curr_time
        _body = 'b%s' % curr_time
        new_email = self.email.header.tap_compose()

        new_email.type_to(self.environment.email['activesync']['email'])
        new_email.type_subject(_subject)
        new_email.type_body(_body)

        self.email = new_email.tap_send()

        # wait for the email to be sent before we tap refresh
        self.email.wait_for_email(_subject)

        read_email = self.email.tap_email_subject(_subject)

        self.assertEqual(_body, read_email.body)
        self.assertEqual(_subject, read_email.subject)
class TestSendActiveSyncEmail(GaiaTestCase):
    def setUp(self):
        try:
            account = self.testvars['email']['ActiveSync']
        except KeyError:
            raise SkipTest('account details not present in test variables')

        GaiaTestCase.setUp(self)
        self.connect_to_network()

        self.email = Email(self.marionette)
        self.email.launch()

        # setup ActiveSync account
        self.email.setup_active_sync_email(account)

    def test_send_active_sync_email(self):
        curr_time = repr(time.time()).replace('.', '')
        new_email = self.email.header.tap_compose()

        new_email.type_to(self.testvars['email']['ActiveSync']['email'])
        new_email.type_subject('test email %s' % curr_time)
        new_email.type_body('Lorem ipsum dolor sit amet %s' % curr_time)

        self.email = new_email.tap_send()

        # wait for the email to be sent before we tap refresh
        self.email.wait_for_email('test email %s' % curr_time)

        # assert that the email app subject is in the email list
        self.assertIn('test email %s' % curr_time,
                      [mail.subject for mail in self.email.mails])

        read_email = self.email.mails[0].tap_subject()

        self.assertEqual('Lorem ipsum dolor sit amet %s' % curr_time,
                         read_email.body)
        self.assertEqual('test email %s' % curr_time, read_email.subject)
    def test_receive_active_sync_email(self):
        # setup ActiveSync account
        email = Email(self.marionette)
        email.launch()

        email.setup_active_sync_email(self.environment.email["activesync"])

        # wait for sync to complete
        email.wait_for_emails_to_sync()

        # Touch home button to exit email app
        self.device.touch_home_button()

        # send email to active sync account
        mock_email = MockEmail(self.environment.host["smtp"]["email"], self.environment.email["activesync"]["email"])
        EmailUtil().send(self.environment.host["smtp"], mock_email)

        self.marionette.switch_to_frame()
        system = System(self.marionette)

        # Wait for email notification
        system.wait_for_notification_toaster_displayed(timeout=60)
        system.wait_for_notification_toaster_not_displayed()

        # Expand the notification bar
        system.wait_for_status_bar_displayed()
        utility_tray = system.open_utility_tray()
        utility_tray.wait_for_notification_container_displayed()

        # Assert there is one notification is listed in notifications-container
        notifications = utility_tray.notifications
        self.assertEqual(1, len(notifications), "Expected one notification.")
        email = notifications[0].tap_notification()

        self.wait_for_condition(lambda m: self.apps.displayed_app.name == "E-Mail")
        self.apps.switch_to_displayed_app()

        # check if the sender's email address is fine
        self.assertEqual(
            email.senders_email,
            mock_email["from"],
            "Senders's email on the inbox screen is incorrect. "
            "Expected email is %s. Actual email is %s." % (mock_email["from"], email.senders_email),
        )

        # check if the subject is fine
        self.assertEqual(
            email.subject,
            mock_email["subject"],
            "Senders's email on the inbox scrseen is incorrect. "
            "Expected subject is %s. Actual subject is %s." % (mock_email["subject"], email.subject),
        )

        # check if the email message is fine
        self.assertEqual(
            email.body,
            mock_email["message"],
            "Email message on read email screen is incorrect. "
            'Expected message is "%s". Actual message is '
            '"%s".' % (mock_email["message"], email.body),
        )