def test_save_as_jpg(tmpdir, test_image): folder = tmpdir.mkdir('screenshots').strpath save_as_jpg(image_date=test_image, folder=folder, filename=TEST_FILENAME) screenshot_filename = '{fname}.{ext}'.format( fname=TEST_FILENAME, ext=IMAGE_EXT) file_path = path.join(folder, screenshot_filename) assert path.isfile(file_path)
def test_save_as_jpg_file_exist_error(tmpdir, test_image): folder = tmpdir.mkdir('screenshots').strpath screenshot_filename = '{fname}.{ext}'.format( fname=TEST_FILENAME, ext=IMAGE_EXT) file_path = path.join(folder, screenshot_filename) with open(file_path, 'w') as fp: fp.write('test') assert path.isfile(file_path) with pytest.raises(DuplicateFile) as err: save_as_jpg(image_date=test_image, folder=folder, filename=TEST_FILENAME) assert err.value.message == 'File already exist'
def screenshot_single_target(browser, url, folder, filename): if not browser.get(url=url): return logger.info("Saving image for target {url}".format(url=url)) print("Screenshoting {url}".format(url=url)) try: save_as_jpg(image_date=browser.target_screenshot, folder=folder, filename=filename) except DuplicateFile: logger.warning("Image '{name}.{ext}' already exist".format( name=filename, ext=IMAGE_EXT, )) return # Printing success log_msg = "Image '{name}' for url {url} saved successfully".format( name=filename, url=url) logger.info(log_msg) print('Saving {done}'.format(done=DONE_PRINT))
def test_save_as_jpg_invalid_image_data(tmpdir, image): folder = tmpdir.mkdir('screenshots').strpath with pytest.raises(IOError): save_as_jpg(image_date=image, folder=folder, filename=TEST_FILENAME)
def test_save_as_jpg_invalid_filename(filename, tmpdir, test_image): folder = tmpdir.mkdir('screenshots').strpath with pytest.raises(IOError) as err: save_as_jpg(image_date=test_image, folder=folder, filename=filename) assert err.value.message == 'Invalid filename'
def test_save_as_jpg_invalid_folder(folder, test_image): with pytest.raises(IOError) as err: save_as_jpg(image_date=test_image, folder=folder, filename='test_1') assert err.value.message == 'Invalid folder'