def test_capture_multiple_shots(self): # https://moztrap.mozilla.org/manage/case/1325/ self.camera = Camera(self.marionette) self.camera.launch() self.camera.take_photo() self.camera.tap_to_display_filmstrip() image_preview = self.camera.filmstrip_images[0].tap() image_preview.wait_for_media_frame() self.assertTrue(image_preview.is_image_preview_visible) self.camera = image_preview.tap_camera() self.camera.take_photo() self.camera.tap_to_display_filmstrip() image_preview = self.camera.filmstrip_images[1].tap() image_preview.wait_for_media_frame() self.assertTrue(image_preview.is_image_preview_visible) self.camera = image_preview.tap_camera() self.camera.take_photo() self.camera.tap_to_display_filmstrip() image_preview = self.camera.filmstrip_images[2].tap() image_preview.wait_for_media_frame() self.assertTrue(image_preview.is_image_preview_visible) self.camera = image_preview.tap_camera()
def tap_camera(self): self.marionette.find_element(*self._camera_button_locator).tap() self.wait_for_element_not_displayed(*self._actions_menu_locator) from gaiatest.apps.camera.app import Camera camera = Camera(self.marionette) camera.switch_to_camera_frame() return camera
def test_camera_picture(self): """https://moztrap.mozilla.org/manage/case/1296/""" lock_screen = LockScreen(self.marionette) homescreen = lock_screen.unlock() #self.wait_for_condition(lambda m: self.apps.displayed_app.name == homescreen.name) # Turn off the geolocation prompt, and then launch the camera app self.apps.set_permission('Camera', 'geolocation', 'deny') self.camera = Camera(self.marionette) self.camera.launch() while (self.camera.current_flash_mode != 'off'): self.camera.tap_toggle_flash_button() time.sleep(2) self.marionette.switch_to_frame() camera_frame = Wait(self.marionette, timeout=120).until( expected.element_present(*self._camera_frame_locator)) camera_frame.tap() self.marionette.switch_to_frame(camera_frame) print "" print "Running Camera Picture Test" self.runPowerTest("camera_picture", "Camera", "camera", PICTURE_INTERVAL_TIME, self.take_picture)
def test_capture_a_video(self): # https://moztrap.mozilla.org/manage/case/2477/ self.camera = Camera(self.marionette) self.camera.launch() self.camera.tap_switch_source() self.camera.tap_capture() self.camera.wait_for_video_capturing() # Wait for 3 seconds of recording self.wait_for_condition(lambda m: self.camera.video_timer >= time. strptime('00:03', '%M:%S')) # Stop recording self.camera.tap_capture() self.camera.wait_for_video_timer_not_visible() # Wait for image to be added in to filmstrip self.camera.wait_for_filmstrip_visible() # Find the new film thumbnail in the film strip self.assertTrue(self.camera.is_filmstrip_visible) # Check that video saved to sdcard videos_after_test = self.get_video_files() self.assertEqual(len(videos_after_test), 1)
def test_post_camera_preview(self): lock_screen = LockScreen(self.marionette) homescreen = lock_screen.unlock() # Turn off the geolocation prompt, and then launch the camera app self.apps.set_permission('Camera', 'geolocation', 'deny') self.camera = Camera(self.marionette) self.camera.launch() while (self.camera.current_flash_mode != 'off'): self.camera.tap_toggle_flash_button() time.sleep(2) self.marionette.switch_to_frame() camera_frame = Wait(self.marionette, timeout=120).until( expected.element_present(*self._camera_frame_locator)) camera_frame.tap() self.marionette.switch_to_frame(camera_frame) time.sleep(20) self.device.touch_home_button() time.sleep(10) self.device.turn_screen_off() print "" print "Running Post Camera Preview Test" self.runPowerTest("post_idle_camera_preview", "Camera", "camera")
def test_camera_flash_modes(self): # https://moztrap.mozilla.org/manage/case/1325/ self.previous_number_of_pictures = len(self.data_layer.picture_files) self.camera = Camera(self.marionette) self.camera.launch() # Toggle flash mode to "on" self.camera.tap_toggle_flash_button() self.assertEqual(self.camera.current_flash_mode, 'on') # Take a photo self.camera.take_photo() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == self. previous_number_of_pictures + 1, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 1) # Toggle flash mode to "off" self.camera.tap_toggle_flash_button() self.assertEqual(self.camera.current_flash_mode, 'off') first_image_src = self.camera.current_image_src # Take a photo self.camera.take_photo() self.camera.wait_for_picture_to_change(first_image_src) # Check that Filmstrip is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == self. previous_number_of_pictures + 2, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 2) # Toggle flash mode to "auto" self.camera.tap_toggle_flash_button() self.assertEqual(self.camera.current_flash_mode, 'auto') second_image_src = self.camera.current_image_src # Take a photo self.camera.take_photo() self.camera.wait_for_picture_to_change(second_image_src) # Check that Filmstrip is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == self. previous_number_of_pictures + 3, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 3)
def test_capture_multiple_shots(self): """https://moztrap.mozilla.org/manage/case/1325/""" self.camera = Camera(self.marionette) self.camera.launch() # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == 1) self.assertEqual(len(self.data_layer.picture_files), 1) # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == 2) self.assertEqual(len(self.data_layer.picture_files), 2) # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == 3) self.assertEqual(len(self.data_layer.picture_files), 3)
class TestCameraMultipleShots(GaiaMtbfTestCase): def setUp(self): GaiaMtbfTestCase.setUp(self) # Turn off Geolocation prompt self.apps.set_permission('Camera', 'geolocation', 'deny') def test_capture_multiple_shots(self): """https://moztrap.mozilla.org/manage/case/1325/""" self.previous_number_of_pictures = len(self.data_layer.picture_files) self.camera = Camera(self.marionette) self.camera.launch() # Take a photo if self.camera.camera_mode == u'video': self.camera.tap_switch_source() self.camera.take_photo() self.apps.switch_to_displayed_app() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == self. previous_number_of_pictures + 1, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 1) # Take a photo self.camera.take_photo() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == self. previous_number_of_pictures + 2, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 2) # Take a photo self.camera.take_photo() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == self. previous_number_of_pictures + 3, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 3) def tearDown(self): GaiaMtbfTestCase.tearDown(self)
def setUp(self): GaiaMtbfTestCase.setUp(self) # Turn off geolocation prompt self.apps.set_permission('Camera', 'geolocation', 'deny') self.camera = Camera(self.marionette) self.camera.launch()
def tap_camera_button(self): self.marionette.find_element(*self._camera_button_locator).tap() self.wait_for_lockscreen_not_visible() from gaiatest.apps.camera.app import Camera camera = Camera(self.marionette) camera.switch_to_camera_frame() return camera
def tap_switch_to_camera(self): self.marionette.find_element(*self._camera_locator).tap() from gaiatest.apps.camera.app import Camera camera_app = Camera(self.marionette) Wait(self.marionette).until(lambda m: self.apps.displayed_app.name == camera_app.name) self.apps.switch_to_displayed_app() camera_app.wait_for_capture_ready() self.wait_for_element_not_displayed(*self._loading_screen_locator) return camera_app
def tap_camera(self): self.marionette.find_element(*self._camera_button_locator).tap() self.wait_for_element_not_displayed(*self._actions_menu_locator) from gaiatest.apps.camera.app import Camera camera = Camera(self.marionette) self.wait_for_condition(lambda m: self.apps.displayed_app.name == camera.name) self.apps.switch_to_displayed_app() camera.wait_for_capture_ready() return camera
def tap_switch_to_camera(self): self.marionette.find_element(*self._camera_locator).tap() from gaiatest.apps.camera.app import Camera camera_app = Camera(self.marionette) Wait(self.marionette).until( lambda m: self.apps.displayed_app.name == camera_app.name) self.apps.switch_to_displayed_app() camera_app.wait_for_capture_ready() self.wait_for_element_not_displayed(*self._loading_screen_locator) return camera_app
def test_capture_a_photo(self): # https://moztrap.mozilla.org/manage/case/1325/ self.camera = Camera(self.marionette) self.camera.launch() self.camera.take_photo() if not self.camera.is_filmstrip_visible: self.camera.tap_to_display_filmstrip() image_preview = self.camera.filmstrip_images[0].tap() self.assertTrue(image_preview.is_image_preview_visible)
def camera_viewfinder(self): # Start camera camera_app = Camera(self.marionette) camera_app.launch() # Leave viewfinder running / displayed for 30 seconds time.sleep(30) # Sleep a bit then close the app self.close_app() # Sleep between iterations time.sleep(5)
def test_camera_flash_modes(self): # https://moztrap.mozilla.org/manage/case/1325/ self.camera = Camera(self.marionette) self.camera.launch() if self.camera.is_toggle_flash_button_visible: # Toggle flash mode to "on" self.camera.tap_toggle_flash_button() self.assertEqual(self.camera.current_flash_mode, 'on') # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == 1) self.assertEqual(len(self.data_layer.picture_files), 1) # Toggle flash mode to "off" self.camera.tap_toggle_flash_button() self.assertEqual(self.camera.current_flash_mode, 'off') # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == 2) self.assertEqual(len(self.data_layer.picture_files), 2) # Toggle flash mode to "auto" self.camera.tap_toggle_flash_button() self.assertEqual(self.camera.current_flash_mode, 'auto') # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == 3) self.assertEqual(len(self.data_layer.picture_files), 3)
class TestCameraMultipleShots(GaiaMtbfTestCase): def setUp(self): GaiaMtbfTestCase.setUp(self) # Turn off Geolocation prompt self.apps.set_permission('Camera', 'geolocation', 'deny') def test_capture_multiple_shots(self): """https://moztrap.mozilla.org/manage/case/1325/""" self.previous_number_of_pictures = len(self.data_layer.picture_files) self.camera = Camera(self.marionette) self.camera.launch() # Take a photo if self.camera.camera_mode == u'video': self.camera.tap_switch_source() self.camera.take_photo() self.apps.switch_to_displayed_app() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == self.previous_number_of_pictures + 1, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 1) # Take a photo self.camera.take_photo() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == self.previous_number_of_pictures + 2, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 2) # Take a photo self.camera.take_photo() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == self.previous_number_of_pictures + 3, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 3) def tearDown(self): GaiaMtbfTestCase.tearDown(self)
class TestCamera(GaiaMtbfTestCase): def setUp(self): GaiaMtbfTestCase.setUp(self) # Turn off geolocation prompt self.apps.set_permission('Camera', 'geolocation', 'deny') self.camera = Camera(self.marionette) self.camera.launch() def test_capture_a_video(self): """https://moztrap.mozilla.org/manage/case/2477/""" self.previous_number_of_videos = len(self.data_layer.video_files) # Switch to video mode self.camera.wait_for_capture_ready() if self.camera.camera_mode == u'picture': self.camera.tap_switch_source() # Record 10 seconds of video self.camera.record_video(10) # Check that video saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.video_files) == self. previous_number_of_videos + 1, 15) self.assertEqual(len(self.data_layer.video_files), self.previous_number_of_videos + 1) def tearDown(self): GaiaMtbfTestCase.tearDown(self)
class TestCamera(GaiaMtbfTestCase): def setUp(self): GaiaMtbfTestCase.setUp(self) # Turn off geolocation prompt self.apps.set_permission('Camera', 'geolocation', 'deny') self.camera = Camera(self.marionette) self.camera.launch() def test_capture_a_video(self): """https://moztrap.mozilla.org/manage/case/2477/""" self.previous_number_of_videos = len(self.data_layer.video_files) # Switch to video mode self.camera.wait_for_capture_ready() if self.camera.camera_mode == u'picture': self.camera.tap_switch_source() # Record 10 seconds of video self.camera.record_video(10) # Check that video saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.video_files) == self.previous_number_of_videos + 1, 15) self.assertEqual(len(self.data_layer.video_files), self.previous_number_of_videos + 1) def tearDown(self): GaiaMtbfTestCase.tearDown(self)
class TestCamera(GaiaTestCase): def setUp(self): GaiaTestCase.setUp(self) # Turn off geolocation prompt self.apps.set_permission('Camera', 'geolocation', 'deny') def test_capture_a_video(self): """https://moztrap.mozilla.org/manage/case/2477/""" # Check that 0 video files are present before we start the test self.assertEqual(len(self.data_layer.video_files), 0) self.camera = Camera(self.marionette) self.camera.launch() # Switch to video mode self.camera.tap_switch_source() # Record 3 seconds of video self.camera.record_video(3) # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) self.camera.wait_for_filmstrip_not_visible() # Check that video saved to SD card self.assertIn("VID_0001.3gp", self.data_layer.video_files[0])
def tap_camera(self): actions_menu = Wait(self.marionette).until( expected.element_present(*self._actions_menu_locator)) Wait(self.marionette).until( expected.element_displayed(actions_menu)) self.marionette.find_element(*self._camera_button_locator).tap() Wait(self.marionette).until( expected.element_not_displayed(actions_menu)) from gaiatest.apps.camera.app import Camera camera = Camera(self.marionette) Wait(self.marionette).until(lambda m: self.apps.displayed_app.name == camera.name) self.apps.switch_to_displayed_app() camera.wait_for_capture_ready() return camera
def test_capture_multiple_shots(self): """https://moztrap.mozilla.org/manage/case/1325/""" self.previous_number_of_pictures = len(self.data_layer.picture_files) self.camera = Camera(self.marionette) self.camera.launch() # Take a photo if self.camera.camera_mode == u'video': self.camera.tap_switch_source() self.camera.take_photo() self.apps.switch_to_displayed_app() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == self. previous_number_of_pictures + 1, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 1) # Take a photo self.camera.take_photo() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == self. previous_number_of_pictures + 2, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 2) # Take a photo self.camera.take_photo() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == self. previous_number_of_pictures + 3, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 3)
def camera_photo(self): # Start camera camera_app = Camera(self.marionette) camera_app.launch() time.sleep(5) # Take a photo camera_app.take_photo() # Sleep a bit then close the app time.sleep(5) self.close_app() # Sleep between iterations time.sleep(5)
def test_capture_multiple_shots(self): # https://moztrap.mozilla.org/manage/case/1325/ self.camera = Camera(self.marionette) self.camera.launch() # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == 1) self.assertEqual(len(self.data_layer.picture_files), 1) # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == 2) self.assertEqual(len(self.data_layer.picture_files), 2) # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == 3) self.assertEqual(len(self.data_layer.picture_files), 3)
def test_camera_video(self): """https://moztrap.mozilla.org/manage/case/1296/""" lock_screen = LockScreen(self.marionette) homescreen = lock_screen.unlock() self.wait_for_condition(lambda m: self.apps.displayed_app.name == homescreen.name) # Turn off the geolocation prompt, and then launch the camera app self.apps.set_permission('Camera', 'geolocation', 'deny') self.camera = Camera(self.marionette) self.camera.launch() time.sleep(5) self.camera.tap_switch_source() time.sleep(5) self.marionette.switch_to_frame() self.wait_for_element_present(*self._camera_frame_locator) camera_frame = self.marionette.find_element(*self._camera_frame_locator) camera_frame.tap() self.marionette.switch_to_frame(camera_frame) self.camera.tap_capture() print "" print "Running Camera Video Test" self.runPowerTest("camera_video", "Camera", "camera") self.camera.tap_capture()
def test_capture_a_video(self): # https://moztrap.mozilla.org/manage/case/2477/ self.camera = Camera(self.marionette) self.camera.launch() self.camera.tap_switch_source() self.camera.tap_capture() self.camera.wait_for_video_capturing() # Wait for 3 seconds of recording self.wait_for_condition(lambda m: self.camera.video_timer >= time.strptime('00:03', '%M:%S')) # Stop recording self.camera.tap_capture() self.camera.wait_for_video_timer_not_visible() # Wait for image to be added in to filmstrip self.camera.wait_for_filmstrip_visible() # Find the new film thumbnail in the film strip self.assertTrue(self.camera.is_filmstrip_visible) # Check that video saved to sdcard videos_after_test = self.data_layer.video_files self.assertEqual(len(videos_after_test), 1)
def test_capture_a_photo(self): """https://moztrap.mozilla.org/manage/case/1325/""" self.previous_number_of_pictures = len(self.data_layer.picture_files) self.camera = Camera(self.marionette) self.camera.launch() # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == self.previous_number_of_pictures + 1, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 1)
def test_post_camera_preview(self): lock_screen = LockScreen(self.marionette) homescreen = lock_screen.unlock() # Turn off the geolocation prompt, and then launch the camera app self.apps.set_permission('Camera', 'geolocation', 'deny') self.camera = Camera(self.marionette) self.camera.launch() while (self.camera.current_flash_mode != 'off'): self.camera.tap_toggle_flash_button(); time.sleep(2) self.marionette.switch_to_frame() camera_frame = Wait(self.marionette, timeout=120).until( expected.element_present(*self._camera_frame_locator)) camera_frame.tap() self.marionette.switch_to_frame(camera_frame) time.sleep(20) self.device.touch_home_button() time.sleep(10) self.device.turn_screen_off() print "" print "Running Post Camera Preview Test" self.runPowerTest("post_idle_camera_preview", "Camera", "camera")
def test_capture_multiple_shots(self): # https://moztrap.mozilla.org/manage/case/1325/ self.camera = Camera(self.marionette) self.camera.launch() self.camera.take_photo() self.camera.tap_to_display_filmstrip() image_preview = self.camera.filmstrip_images[0].tap() self.assertTrue(image_preview.is_image_preview_visible) self.camera = image_preview.tap_camera() self.camera.take_photo() self.camera.tap_to_display_filmstrip() image_preview = self.camera.filmstrip_images[1].tap() self.assertTrue(image_preview.is_image_preview_visible) self.camera = image_preview.tap_camera() self.camera.take_photo() self.camera.tap_to_display_filmstrip() image_preview = self.camera.filmstrip_images[2].tap() self.assertTrue(image_preview.is_image_preview_visible) self.camera = image_preview.tap_camera()
def test_camera_video(self): """https://moztrap.mozilla.org/manage/case/1296/""" lock_screen = LockScreen(self.marionette) homescreen = lock_screen.unlock() #self.wait_for_condition(lambda m: self.apps.displayed_app.name == homescreen.name) # Turn off the geolocation prompt, and then launch the camera app self.apps.set_permission('Camera', 'geolocation', 'deny') self.camera = Camera(self.marionette) self.camera.launch() while (self.camera.current_flash_mode != 'off'): self.camera.tap_toggle_flash_button(); time.sleep(2) time.sleep(5) self.camera.tap_switch_source() time.sleep(5) self.marionette.switch_to_frame() camera_frame = Wait(self.marionette, timeout=120).until( expected.element_present(*self._camera_frame_locator)) camera_frame.tap() self.marionette.switch_to_frame(camera_frame) self.camera.tap_capture() print "" print "Running Camera Video Test" self.runPowerTest("camera_video", "Camera", "camera") self.camera.tap_capture()
def test_camera_geolocation_prompt(self): camera = Camera(self.marionette) camera.launch() permission = PermissionDialog(self.marionette) self.marionette.switch_to_default_content() permission.wait_for_permission_dialog_displayed() self.assertEqual(permission.permission_dialog_message, '%s would like to know your location.' % camera.name) permission.tap_to_confirm_permission() current_permission = self.apps.get_permission('Camera', 'geolocation') self.assertEqual(current_permission, 'allow')
def test_capture_a_video(self): # https://moztrap.mozilla.org/manage/case/2477/ self.camera = Camera(self.marionette) self.camera.launch() # Switch to video mode self.camera.tap_switch_source() # Record 3 seconds of video self.camera.record_video(3) # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that video saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.video_files) == 1) self.assertEqual(len(self.data_layer.video_files), 1)
def unlock_to_camera(self): Wait(self.marionette).until( expected.element_displayed( Wait(self.marionette).until( expected.element_present( *self._lockscreen_handle_locator)))) self._slide_to_unlock('camera') return Camera(self.marionette)
def test_capture_a_video(self): """ https://moztrap.mozilla.org/manage/case/2477/ """ self.previous_number_of_videos = len(self.data_layer.video_files) self.camera = Camera(self.marionette) self.camera.launch() # Switch to video mode self.camera.tap_switch_source() # Record 3 seconds of video self.camera.record_video(3) # Check that video saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.video_files) == self.previous_number_of_videos + 1, 15) self.assertEqual(len(self.data_layer.video_files), self.previous_number_of_videos + 1) self.assertTrue(self.data_layer.video_files[0]["size"] > 1000)
def test_capture_and_delete_video(self): """ https://moztrap.mozilla.org/manage/case/3324/ """ self.previous_number_of_videos = len(self.data_layer.video_files) # launch camera app self.camera = Camera(self.marionette) self.camera.launch() # Switch to video mode self.camera.tap_switch_source() # Record 10 seconds of video self.camera.record_video(10) # Check that video saved to SD card self.assertEqual(len(self.data_layer.video_files), self.previous_number_of_videos + 1) # Tap preview icon to see the video that's just taken self.camera.tap_thumbnail() self.preview = ImagePreview(self.marionette) Wait(self.marionette).until( lambda m: self.preview.is_video_play_button_visible is True) # Play video, then pause it self.preview.tap_video_player_play_button() time.sleep(5) self.preview.tap_video_player_pause_button() # Tape the options icon, and delete the file self.preview.delete_file() # Check the user is back in camera preview mode, and there is no preview icon anymore Wait(self.marionette).until( lambda m: self.camera.is_thumbnail_visible is False) # Verify the video is deleted now self.assertEqual(len(self.data_layer.video_files), self.previous_number_of_videos)
def test_capture_a_video(self): """https://moztrap.mozilla.org/manage/case/2477/""" # Check that 0 video files are present before we start the test self.assertEqual(len(self.data_layer.video_files), 0) self.camera = Camera(self.marionette) self.camera.launch() # Switch to video mode self.camera.tap_switch_source() # Record 3 seconds of video self.camera.record_video(3) # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) self.camera.wait_for_filmstrip_not_visible() # Check that video saved to SD card self.assertIn("VID_0001.3gp", self.data_layer.video_files[0])
class TestCamera(GaiaTestCase): def setUp(self): GaiaTestCase.setUp(self) # Turn off geolocation prompt self.apps.set_permission('Camera', 'geolocation', 'deny') def test_capture_a_video(self): """https://moztrap.mozilla.org/manage/case/2477/""" self.camera = Camera(self.marionette) self.camera.launch() # Switch to video mode self.camera.tap_switch_source() # Record 3 seconds of video self.camera.record_video(3) # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that video saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.video_files) == 1) self.assertEqual(len(self.data_layer.video_files), 1)
class TestCamera(GaiaTestCase): def setUp(self): GaiaTestCase.setUp(self) # Turn off geolocation prompt self.apps.set_permission('Camera', 'geolocation', 'deny') def test_capture_a_video(self): # https://moztrap.mozilla.org/manage/case/2477/ self.camera = Camera(self.marionette) self.camera.launch() # Switch to video mode self.camera.tap_switch_source() # Record 3 seconds of video self.camera.record_video(3) # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that video saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.video_files) == 1) self.assertEqual(len(self.data_layer.video_files), 1)
class TestPreviewDelete(GaiaTestCase): def setUp(self): GaiaTestCase.setUp(self) # Turn off geolocation prompt self.apps.set_permission('Camera', 'geolocation', 'deny') def test_capture_and_delete_video(self): """ https://moztrap.mozilla.org/manage/case/3324/ """ self.previous_number_of_videos = len(self.data_layer.video_files) # launch camera app self.camera = Camera(self.marionette) self.camera.launch() # Switch to video mode self.camera.tap_switch_source() # Record 10 seconds of video self.camera.record_video(10) # Check that video saved to SD card self.assertEqual( len(self.data_layer.video_files), self.previous_number_of_videos + 1) # Tap preview icon to see the video that's just taken self.camera.tap_thumbnail() self.preview = ImagePreview(self.marionette) Wait(self.marionette).until( lambda m: self.preview.is_video_play_button_visible is True) # Play video, then pause it self.preview.tap_video_player_play_button() time.sleep(5) self.preview.tap_video_player_pause_button() # Tape the options icon, and delete the file self.preview.delete_file() # Check the user is back in camera preview mode, and there is no preview icon anymore Wait(self.marionette).until( lambda m: self.camera.is_thumbnail_visible is False) # Verify the video is deleted now self.assertEqual( len(self.data_layer.video_files), self.previous_number_of_videos)
class TestCamera(GaiaTestCase): def setUp(self): GaiaTestCase.setUp(self) # Turn off geolocation prompt self.apps.set_permission('Camera', 'geolocation', 'deny') def test_capture_a_photo(self): # https://moztrap.mozilla.org/manage/case/1325/ self.camera = Camera(self.marionette) self.camera.launch() # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == 1) self.assertEqual(len(self.data_layer.picture_files), 1)
class TestCamera(GaiaTestCase): def setUp(self): GaiaTestCase.setUp(self) # Turn off geolocation prompt self.apps.set_permission('Camera', 'geolocation', 'deny') def test_capture_a_photo(self): # https://moztrap.mozilla.org/manage/case/1325/ self.camera = Camera(self.marionette) self.camera.launch() # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition( lambda m: len(self.data_layer.picture_files) == 1) self.assertEqual(len(self.data_layer.picture_files), 1)
def test_camera_flash_modes(self): # https://moztrap.mozilla.org/manage/case/1325/ self.previous_number_of_pictures = len(self.data_layer.picture_files) self.camera = Camera(self.marionette) self.camera.launch() # Toggle flash mode to "on" self.camera.tap_toggle_flash_button() self.assertEqual(self.camera.current_flash_mode, 'on') # Take a photo self.camera.take_photo() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == self.previous_number_of_pictures + 1, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 1) # Toggle flash mode to "off" self.camera.tap_toggle_flash_button() self.assertEqual(self.camera.current_flash_mode, 'off') first_image_src = self.camera.current_image_src # Take a photo self.camera.take_photo() self.camera.wait_for_picture_to_change(first_image_src) # Check that Filmstrip is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == self.previous_number_of_pictures + 2, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 2) # Toggle flash mode to "auto" self.camera.tap_toggle_flash_button() self.assertEqual(self.camera.current_flash_mode, 'auto') second_image_src = self.camera.current_image_src # Take a photo self.camera.take_photo() self.camera.wait_for_picture_to_change(second_image_src) # Check that Filmstrip is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == self.previous_number_of_pictures + 3, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 3)
def test_camera_flash_modes(self): # https://moztrap.mozilla.org/manage/case/1325/ self.camera = Camera(self.marionette) self.camera.launch() if self.camera.is_toggle_flash_button_visible: # Toggle flash mode to "on" self.camera.tap_toggle_flash_button() self.assertEqual(self.camera.current_flash_mode, "on") # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == 1) self.assertEqual(len(self.data_layer.picture_files), 1) # Toggle flash mode to "off" self.camera.tap_toggle_flash_button() self.assertEqual(self.camera.current_flash_mode, "off") # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == 2) self.assertEqual(len(self.data_layer.picture_files), 2) # Toggle flash mode to "auto" self.camera.tap_toggle_flash_button() self.assertEqual(self.camera.current_flash_mode, "auto") # Take a photo self.camera.take_photo() # Check that Filmstrip is visible self.assertTrue(self.camera.is_filmstrip_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == 3) self.assertEqual(len(self.data_layer.picture_files), 3)
def test_capture_a_video(self): """https://moztrap.mozilla.org/manage/case/2477/""" self.previous_number_of_videos = len(self.data_layer.video_files) self.camera = Camera(self.marionette) self.camera.launch() # Switch to video mode self.camera.tap_switch_source() # Record 3 seconds of video self.camera.record_video(3) # Check that video saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.video_files) == self.previous_number_of_videos + 1, 15) self.assertEqual(len(self.data_layer.video_files), self.previous_number_of_videos + 1)
def camera_video(self): # Start camera camera_app = Camera(self.marionette) camera_app.launch() # Swtich to video time.sleep(5) camera_app.tap_switch_source() # Record a video for the specified duration camera_app.record_video(self.duration) # Sleep a bit and close the app time.sleep(5) self.close_app() # Wait between iterations time.sleep(5)
def test_capture_multiple_shots(self): """https://moztrap.mozilla.org/manage/case/1325/""" self.previous_number_of_pictures = len(self.data_layer.picture_files) self.camera = Camera(self.marionette) self.camera.launch() # Take a photo if self.camera.camera_mode == u'video': self.camera.tap_switch_source() self.camera.take_photo() self.apps.switch_to_displayed_app() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == self.previous_number_of_pictures + 1, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 1) # Take a photo self.camera.take_photo() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == self.previous_number_of_pictures + 2, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 2) # Take a photo self.camera.take_photo() # Check that thumbnail is visible self.assertTrue(self.camera.is_thumbnail_visible) # Check that picture saved to SD card self.wait_for_condition(lambda m: len(self.data_layer.picture_files) == self.previous_number_of_pictures + 3, 10) self.assertEqual(len(self.data_layer.picture_files), self.previous_number_of_pictures + 3)
def test_camera_picture(self): """https://moztrap.mozilla.org/manage/case/1296/""" lock_screen = LockScreen(self.marionette) homescreen = lock_screen.unlock() self.wait_for_condition(lambda m: self.apps.displayed_app.name == homescreen.name) # Turn off the geolocation prompt, and then launch the camera app self.apps.set_permission('Camera', 'geolocation', 'deny') self.camera = Camera(self.marionette) self.camera.launch() while (self.camera.current_flash_mode != 'off'): self.camera.tap_toggle_flash_button(); time.sleep(2) self.marionette.switch_to_frame() self.wait_for_element_present(*self._camera_frame_locator) camera_frame = self.marionette.find_element(*self._camera_frame_locator) camera_frame.tap() self.marionette.switch_to_frame(camera_frame) print "" print "Running Camera Picture Test" self.runPowerTest("camera_picture", "Camera", "camera", PICTURE_INTERVAL_TIME, self.take_picture)
class TestCamera(GaiaTestCase): def setUp(self): GaiaTestCase.setUp(self) # Turn off geolocation prompt self.apps.set_permission('Camera', 'geolocation', 'deny') def test_capture_a_photo(self): # https://moztrap.mozilla.org/manage/case/1325/ self.camera = Camera(self.marionette) self.camera.launch() self.camera.take_photo() if not self.camera.is_filmstrip_visible: self.camera.tap_to_display_filmstrip() image_preview = self.camera.filmstrip_images[0].tap() self.assertTrue(image_preview.is_image_preview_visible)