Source code for gaiatest.apps.messages.regions.activities

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

import time

from marionette_driver import expected, By, Wait

from gaiatest.apps.base import Base


[docs]class Activities(Base): _actions_menu_locator = (By.CSS_SELECTOR, 'body > form[data-type="action"]') _settings_button_locator = (By.XPATH, '//*[text()="Settings"]') _add_subject_button_locator = (By.CSS_SELECTOR, 'button[data-l10n-id="add-subject"]') _add_to_contact_button_locator = (By.XPATH, '//*[text()="Add to an existing contact"]') _create_new_contact_button_locator = (By.CSS_SELECTOR, 'button[data-l10n-id="createNewContact"]') _forward_message_button_locator = (By.CSS_SELECTOR, 'button[data-l10n-id="forward"]') _delete_message_button_locator = (By.CSS_SELECTOR, 'form[data-type="action"] button[data-l10n-id="delete"]') _confirm_delete_message_locator = (By.CSS_SELECTOR, 'button.danger') _view_message_report_locator = (By.CSS_SELECTOR, 'button[data-l10n-id="view-message-report"]') def __init__(self, marionette): Base.__init__(self, marionette) Wait(self.marionette).until(expected.element_displayed( Wait(self.marionette).until(expected.element_present( *self._actions_menu_locator)))) # TODO Difficult intermittent bug 977052 time.sleep(1)
[docs] def tap_report(self): self.marionette.find_element(*self._view_message_report_locator).tap() from gaiatest.apps.messages.regions.report import Report return Report(self.marionette)
[docs] def tap_settings(self): self.marionette.find_element(*self._settings_button_locator).tap() from gaiatest.apps.Settings.app import Settings Settings(self.marionette).wait_to_be_displayed() self.apps.switch_to_displayed_app() from gaiatest.apps.messages.regions.messaging_settings import MessagingSettings return MessagingSettings(self.marionette)
[docs] def tap_add_subject(self): self.marionette.find_element(*self._add_subject_button_locator).tap()
[docs] def tap_add_to_contact(self): self.marionette.find_element(*self._add_to_contact_button_locator).tap() from gaiatest.apps.contacts.app import Contacts contacts = Contacts(self.marionette) contacts.switch_to_contacts_frame() return contacts
[docs] def tap_create_new_contact(self): self.marionette.find_element(*self._create_new_contact_button_locator).tap() from gaiatest.apps.contacts.regions.contact_form import NewContact new_contact = NewContact(self.marionette) new_contact.switch_to_new_contact_form() return new_contact
[docs] def tap_forward_message(self): self.marionette.find_element(*self._forward_message_button_locator).tap() from gaiatest.apps.messages.regions.new_message import NewMessage return NewMessage(self.marionette)
[docs] def tap_delete_message(self): delete_message_button = self.marionette.find_element(*self._delete_message_button_locator) Wait(self.marionette).until(expected.element_displayed(delete_message_button)) delete_message_button.tap()
[docs] def confirm_delete_message(self): confirm_delete_message = self.marionette.find_element(*self._confirm_delete_message_locator) Wait(self.marionette).until(expected.element_displayed(confirm_delete_message)) confirm_delete_message.tap() Wait(self.marionette).until(expected.element_not_displayed(confirm_delete_message))