class TestCardsView(GaiaTestCase): _app_under_test = "Clock" _clock_frame_locator = (By.CSS_SELECTOR, "iframe[mozapp^='app://clock'][mozapp$='manifest.webapp']") def setUp(self): GaiaTestCase.setUp(self) self.cards_view = CardsView(self.marionette) # Launch the Clock app as a basic, reliable # app to test against in Cards View self.app = self.apps.launch(self._app_under_test) def test_that_app_can_be_launched_from_cards_view(self): # https://github.com/mozilla/gaia-ui-tests/issues/98 # Switch to top level frame before dispatching the event self.marionette.switch_to_frame() # Find the cards frame html element clock_frame = self.marionette.find_element(*self._clock_frame_locator) # Pull up the cards view self.cards_view.open_cards_view() self.assertFalse(clock_frame.is_displayed(), "Clock frame not expected to be displayed") # Launch the app from the cards view self.cards_view.tap_app(self._app_under_test) self.cards_view.wait_for_cards_view_not_displayed() self.assertTrue(clock_frame.is_displayed(), "Clock frame expected to be displayed")
def test_that_app_can_be_launched_from_cards_view(self): """https://moztrap.mozilla.org/manage/case/2462/""" cards_view = CardsView(self.marionette) self.assertFalse(cards_view.is_cards_view_displayed, 'Cards view not expected to be visible') # Pull up the cards view self.device.hold_home_button() cards_view.wait_for_cards_view() # Wait for first app ready cards_view.wait_for_card_ready(self._test_apps[1]) for app in self._test_apps: self.assertTrue(cards_view.is_app_displayed(app), '%s app should be present in cards view' % app) cards_view.swipe_to_previous_app() # Wait for previous app ready cards_view.wait_for_card_ready(self._test_apps[0]) cards_view.tap_app(self._test_apps[0]) cards_view.wait_for_cards_view_not_displayed() self.assertEqual(self.apps.displayed_app.name, self._test_apps[0])
class TestCardsView(GaiaTestCase): _app_under_test = "Clock" _clock_frame_locator = ( By.CSS_SELECTOR, "iframe[mozapp^='app://clock'][mozapp$='manifest.webapp']") def setUp(self): GaiaTestCase.setUp(self) self.cards_view = CardsView(self.marionette) # Launch the Clock app as a basic, reliable # app to test against in Cards View self.app = self.apps.launch(self._app_under_test) def test_that_app_can_be_launched_from_cards_view(self): # https://github.com/mozilla/gaia-ui-tests/issues/98 # Switch to top level frame before dispatching the event self.marionette.switch_to_frame() # Find the cards frame html element clock_frame = self.marionette.find_element(*self._clock_frame_locator) # Pull up the cards view self.cards_view.open_cards_view() self.assertFalse(clock_frame.is_displayed(), "Clock frame not expected to be displayed") # Launch the app from the cards view self.cards_view.tap_app(self._app_under_test) self.cards_view.wait_for_cards_view_not_displayed() self.assertTrue(clock_frame.is_displayed(), "Clock frame expected to be displayed")
def test_that_app_can_be_launched_from_cards_view(self): # https://bugzilla.mozilla.org/show_bug.cgi?id=943338 cards_view = CardsView(self.marionette) self.assertFalse(cards_view.is_cards_view_displayed, 'Cards view not expected to be visible') # Pull up the cards view cards_view.open_cards_view() for app in self._test_apps: self.assertTrue(cards_view.is_app_displayed(app), '%s app should be visible in cards view' % app) cards_view.swipe_to_next_app() cards_view.tap_app(self._test_apps[0]) cards_view.wait_for_cards_view_not_displayed() self.assertEqual(self.apps.displayed_app.name, self._test_apps[0])
def test_that_app_can_be_launched_from_cards_view(self): # https://bugzilla.mozilla.org/show_bug.cgi?id=943338 cards_view = CardsView(self.marionette) self.assertFalse(cards_view.is_cards_view_displayed, 'Cards view not expected to be visible') # Pull up the cards view self.device.hold_home_button() cards_view.wait_for_cards_view() for app in self._test_apps: self.assertTrue(cards_view.is_app_displayed(app), '%s app should be visible in cards view' % app) cards_view.swipe_to_next_app() cards_view.tap_app(self._test_apps[0]) cards_view.wait_for_cards_view_not_displayed() self.assertEqual(self.apps.displayed_app.name, self._test_apps[0])
def test_cards_view_with_two_apps(self): """https://moztrap.mozilla.org/manage/case/2462/""" cards_view = CardsView(self.marionette) self.assertFalse(cards_view.is_displayed, 'Cards view not expected to be visible') # Pull up the cards view self.device.hold_home_button() cards_view.wait_for_cards_view() card_frame = self.marionette.get_active_frame() self.take_screenshot() # disabled per Bug 1118390 #self.change_orientation('landscape-primary') #self.take_screenshot() #self.change_orientation('portrait-primary') #self.take_screenshot() # Wait for first app ready cards_view.wait_for_card_ready(self._test_apps[1]) for app in self._test_apps: self.assertTrue(cards_view.is_app_displayed(app), '%s app should be present in cards view' % app) cards_view.swipe_to_previous_app() # Wait for previous app ready cards_view.wait_for_card_ready(self._test_apps[0]) # sleep inside above method is insufficient time.sleep(2) self.take_screenshot() self.marionette.switch_to_frame(frame=card_frame) cards_view.tap_app(self._test_apps[0]) cards_view.wait_for_cards_view_not_displayed() self.take_screenshot() #bug 1151571 will cause blank screen capture self.assertEqual(self.apps.displayed_app.name, self._test_apps[0])
def test_cards_view_with_two_apps(self): """https://moztrap.mozilla.org/manage/case/2462/""" cards_view = CardsView(self.marionette) self.assertFalse(cards_view.is_displayed, 'Cards view not expected to be visible') # Pull up the cards view self.device.hold_home_button() cards_view.wait_for_cards_view() card_frame = self.marionette.get_active_frame() self.take_screenshot() # disabled per Bug 1118390 #self.change_orientation('landscape-primary') #self.take_screenshot() #self.change_orientation('portrait-primary') #self.take_screenshot() # Wait for first app ready cards_view.wait_for_card_ready(self._test_apps[1]) for app in self._test_apps: self.assertTrue(cards_view.is_app_displayed(app), '%s app should be present in cards view' % app) cards_view.swipe_to_previous_app() # Wait for previous app ready cards_view.wait_for_card_ready(self._test_apps[0]) # sleep inside above method is insufficient time.sleep(2) self.take_screenshot() self.marionette.switch_to_frame(frame=card_frame) cards_view.tap_app(self._test_apps[0]) cards_view.wait_for_cards_view_not_displayed() self.take_screenshot() #bug 1151571 will cause blank screen capture self.assertEqual(self.apps.displayed_app.name, self._test_apps[0])
class TestCardsView(GaiaTestCase): _app_under_test = "Clock" _clock_frame_locator = (By.CSS_SELECTOR, "iframe[mozapp^='app://clock'][mozapp$='manifest.webapp']") def setUp(self): GaiaTestCase.setUp(self) self.cards_view = CardsView(self.marionette) # Launch the Clock app as a basic, reliable # app to test against in Cards View self.app = self.apps.launch(self._app_under_test) def test_cards_view(self): # https://moztrap.mozilla.org/manage/case/1909/ # Switch to top level frame before dispatching the event self.marionette.switch_to_frame() # Check that cards view is not displayed self.assertFalse(self.cards_view.is_cards_view_displayed, "Cards view not expected to be visible") # Pull up the cards view self.cards_view.open_cards_view() self.assertTrue(self.cards_view.is_app_displayed(self._app_under_test), "%s app expected to be visible in cards view" % self._app_under_test) self.cards_view.exit_cards_view() def test_that_app_can_be_launched_from_cards_view(self): # https://github.com/mozilla/gaia-ui-tests/issues/98 # Switch to top level frame before dispatching the event self.marionette.switch_to_frame() # Find the cards frame html element clock_frame = self.marionette.find_element(*self._clock_frame_locator) # Pull up the cards view self.cards_view.open_cards_view() self.assertFalse(clock_frame.is_displayed(), "Clock frame not expected to be displayed") # Launch the app from the cards view self.cards_view.tap_app(self._app_under_test) self.cards_view.wait_for_cards_view_not_displayed() self.assertTrue(clock_frame.is_displayed(), "Clock frame expected to be displayed") def test_kill_app_from_cards_view(self): # https://moztrap.mozilla.org/manage/case/1917/ # Switch to top level frame before dispatching the event self.marionette.switch_to_frame() # Pull up the cards view self.cards_view.open_cards_view() # Close the current app from cards view self.cards_view.close_app(self._app_under_test) self.marionette.switch_to_frame() # Pull up the cards view again self.cards_view.open_cards_view() # If successfully killed, the app should no longer appear in the cards view. self.assertFalse(self.cards_view.is_app_present(self._app_under_test), "Killed app not expected to appear in cards view")