def test_existing_dir(): with tempfile.TemporaryDirectory() as tmpdirname: with pytest.raises(KnownError): save_page( 'https://www.regular-expressions.info/modifiers.html', tmpdirname, ) assert save_page( 'https://www.regular-expressions.info/modifiers.html', tmpdirname, )
def main(): # pragma: no cover parser = cli.get_parser() args = parser.parse_args() custom_logging.setup(logging_level=args.level) try: save_page(args.url, args.output) except KnownError as e: logging.debug(traceback.format_exc(10)) logging.error(e) sys.exit(1) else: sys.exit(0)
def prepare_regexp(): with tempfile.TemporaryDirectory() as tmpdirname: save_page( 'https://www.regular-expressions.info/modifiers.html', tmpdirname, ) expected_data = requests.get( 'https://www.regular-expressions.info/regex.js') with open(os.path.join(tmpdirname, 'regex.js'), 'w') as fixture: fixture.write(expected_data.text) with open(os.path.join(tmpdirname, 'regex.js'), 'r') as fixture: expected = fixture.read() with open(os.path.join( tmpdirname, 'regular-expressions-info-modifiers-html_files', 'regex.js', ), 'r') as fixture: actual = fixture.read() return (expected, actual)
def prepare_regexp(): with tempfile.TemporaryDirectory() as tmpdirname: actual_file_path = save_page( 'https://www.regular-expressions.info/modifiers.html', tmpdirname, ) expected_file_path = os.path.join( tmpdirname, 'regular-expressions-info-modifiers-html.html', ) expected_dir_path = os.path.join( tmpdirname, 'regular-expressions-info-modifiers-html_files', ) expected_img_path = os.path.join( tmpdirname, 'regular-expressions-info-modifiers-html_files', 'ads-728-rxbtutorial100.png', ) expected_css_path = os.path.join( tmpdirname, 'regular-expressions-info-modifiers-html_files', 'regex.css', ) expected_js_path = os.path.join( tmpdirname, 'regular-expressions-info-modifiers-html_files', 'regex.js', ) yield ( actual_file_path, expected_file_path, expected_dir_path, expected_img_path, expected_css_path, expected_js_path, )
def test_exceptions(): with tempfile.TemporaryDirectory() as tmpdir: with pytest.raises(loader.KnownError): loader.save_page(url=TEST_URL, output='/tes') with pytest.raises(loader.KnownError): loader.save_page(url=TEST_URL, output=NON_EXIST_PATH) with pytest.raises(loader.KnownError): loader.save_page(url=WRONG_SCHEMA_URL, output=tmpdir) with pytest.raises(loader.KnownError): loader.save_page(url=MISSING_SCHEMA_URL, output=tmpdir) with pytest.raises(loader.KnownError): loader.save_page(url=RESPONSE_404_URL, output=tmpdir) with pytest.raises(loader.KnownError): loader.save_page(url=RESPONSE_503_URL, output=tmpdir)