Exemplo n.º 1
0
 def test_normalize_outputdir_absolute_path_windows_end_backlash(
         self, dir_session):
     os.chdir(dir_session['path'])
     absolute_path = 'C:\\absolute\\path\\'
     expected = 'C:\\absolute\\path'
     outputdir = helpers.normalize_outputdir(absolute_path)
     assert outputdir == expected
Exemplo n.º 2
0
 def test_get_latest_local_no_files_exist(self, dir_function):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     platform = helpers.get_platform()
     driver = Chromedriver(outputdir, 'linux', platform['os_bits'])
     latest_version = driver.get_latest_local_version()
     assert latest_version == '0.0'
Exemplo n.º 3
0
 def test_clean_console_output(self, dir_function, test_utils, caplog):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     test_utils.create_test_files(outputdir)
     clean(outputdir, drivers=['firefox=2.5', 'chrome=2.3'])
     log_record_list = ['{} {}'.format(x.levelname, x.message) for x in caplog.records]
     assert 'INFO removed chromedriver_2.3' in log_record_list
     assert 'INFO removed geckodriver_2.5' in log_record_list
Exemplo n.º 4
0
 def test_get_latest_local_version_firefox(self, dir_function, test_utils):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     platform = helpers.get_platform()
     test_utils.create_test_files(outputdir)
     driver = Geckodriver(outputdir, 'linux', platform['os_bits'])
     latest_version = driver.get_latest_local_version()
     assert latest_version == '2.6'
Exemplo n.º 5
0
 def test_clean_multiple_drivers(self, dir_function, test_utils):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     test_utils.create_test_files(outputdir)
     clean(outputdir, drivers=['chrome=2.2', 'firefox=2.5'])
     files = os.listdir(outputdir)
     assert len(files) == 2
     assert 'geckodriver_2.6' in files
     assert 'chromedriver_2.3' in files
Exemplo n.º 6
0
 def test_clean_only_chrome_windows(self, dir_function, test_utils):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     test_utils.create_test_files_windows(outputdir)
     clean(outputdir, drivers=['chrome'])
     files = os.listdir(outputdir)
     assert len(files) == 2
     assert 'geckodriver_2.5.exe' in files
     assert 'geckodriver_2.6.exe' in files
Exemplo n.º 7
0
 def test_get_latest_local_version_chrome_windows(self, dir_function,
                                                  test_utils):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     platform = helpers.get_platform()
     test_utils.create_test_files_windows(outputdir)
     driver = Chromedriver(outputdir, 'windows', platform['os_bits'])
     latest_version = driver.get_latest_local_version()
     assert latest_version == '2.3'
Exemplo n.º 8
0
 def test_clean_only_firefox(self, dir_function, test_utils):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     test_utils.create_test_files(outputdir)
     clean(outputdir, drivers=['firefox'])
     files = os.listdir(outputdir)
     assert len(files) == 2
     assert 'chromedriver_2.2' in files
     assert 'chromedriver_2.3' in files
Exemplo n.º 9
0
 def test_clean_chrome_specific_version(self, dir_function, test_utils):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     test_utils.create_test_files(outputdir)
     clean(outputdir, drivers=['chrome=2.2'])
     files = os.listdir(outputdir)
     assert len(files) == 3
     assert 'geckodriver_2.5' in files
     assert 'geckodriver_2.6' in files
     assert 'chromedriver_2.3' in files
Exemplo n.º 10
0
 def test_versions_driver_specified(self, dir_function, test_utils, caplog):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     test_utils.create_test_files(outputdir)
     result = versions(outputdir, drivers=['chrome'])
     log_records = caplog.records
     assert log_records[0].levelname == 'INFO'
     assert log_records[0].message == 'chromedriver versions found: 2.2, 2.3'
     assert len(log_records) == 1
     expected = {
         'chromedriver': [('2.2', 'chromedriver_2.2'), ('2.3', 'chromedriver_2.3')]
     }
     assert result == expected
Exemplo n.º 11
0
 def test_versions_windows(self, dir_function, test_utils, caplog):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     test_utils.create_test_files_windows(outputdir)
     result = versions(outputdir)
     log_record_list = ['{} {}'.format(x.levelname, x.message) for x in caplog.records]
     assert 'INFO chromedriver versions found: 2.2, 2.3' in log_record_list
     assert 'INFO geckodriver versions found: 2.5, 2.6' in log_record_list
     expected = {
         'chromedriver': [('2.2', 'chromedriver_2.2.exe'), ('2.3', 'chromedriver_2.3.exe')],
         'geckodriver': [('2.5', 'geckodriver_2.5.exe'), ('2.6', 'geckodriver_2.6.exe')]
     }
     assert result == expected
Exemplo n.º 12
0
 def test_update_chrome_local_is_up_to_date(self, dir_function, caplog):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     platform = helpers.get_platform()
     driver = Chromedriver(outputdir, platform['os_name'], platform['os_bits'])
     latest_version = driver.get_latest_remote_version()
     dummy_file = 'chromedriver_{}'.format(latest_version)
     if platform['os_name'] == 'windows':
         dummy_file += '.exe'
     open(os.path.join(outputdir, dummy_file), 'w+').close()
     update('chrome', outputdir)
     record = caplog.records[0]
     assert record.levelname == 'INFO'
     assert record.message == 'chromedriver is up to date'
Exemplo n.º 13
0
 def test_update_chrome_version_does_not_exist(self, dir_function, caplog):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     platform = helpers.get_platform()
     driver = Chromedriver(outputdir, platform['os_name'], platform['os_bits'])
     version = '99.99'
     with pytest.raises(SystemExit):
         update('chrome', outputdir, version=version)
     log_records = caplog.records
     assert log_records[0].levelname == 'INFO'
     assert log_records[0].message == 'updating chromedriver'
     assert log_records[1].levelname == 'ERROR'
     url = driver._get_chromedriver_download_url(version)
     msg = ('there was a 404 error trying to reach {} \nThis probably '
            'means the requested version does not exist.'.format(url))
     assert log_records[1].message == msg
Exemplo n.º 14
0
 def test_update_firefox_to_latest(self, dir_function, caplog):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     platform = helpers.get_platform()
     driver = Geckodriver(outputdir, platform['os_name'], platform['os_bits'])
     latest_version = driver.get_latest_remote_version()
     update('firefox', outputdir)
     files = os.listdir()
     expected_file = 'geckodriver_{}'.format(latest_version)
     if platform['os_name'] == 'windows':
         expected_file += '.exe'
     assert files == [expected_file]
     log_records = caplog.records
     assert log_records[0].levelname == 'INFO'
     assert log_records[0].message == 'updating geckodriver'
     assert log_records[1].levelname == 'INFO'
     assert log_records[1].message == 'got {}'.format(expected_file)
Exemplo n.º 15
0
 def test_normalize_outputdir_None(self, dir_session):
     os.chdir(dir_session['path'])
     outputdir = helpers.normalize_outputdir(None)
     assert outputdir == dir_session['path']
Exemplo n.º 16
0
 def test_normalize_outputdir_no_params(self, dir_session):
     os.chdir(dir_session['path'])
     outputdir = helpers.normalize_outputdir()
     assert outputdir == dir_session['path']
Exemplo n.º 17
0
 def test_normalize_outputdir_dot_backslash_escaped_char(self, dir_session):
     os.chdir(dir_session['path'])
     outputdir = helpers.normalize_outputdir('.\\b\\n\\t')
     expected = os.path.join(dir_session['path'], 'b', 'n', 't')
     assert outputdir == expected
Exemplo n.º 18
0
 def test_normalize_outputdir_backslash_escaped_char(self, dir_session):
     os.chdir(dir_session['path'])
     outputdir = helpers.normalize_outputdir('\\bbb')
     expected = os.path.abspath('\\bbb')
     assert outputdir == expected
Exemplo n.º 19
0
 def test_normalize_outputdir_absolute_path_windows(self, dir_session):
     os.chdir(dir_session['path'])
     absolute_path = 'C:\\absolute\\path'
     outputdir = helpers.normalize_outputdir(absolute_path)
     assert outputdir == absolute_path
Exemplo n.º 20
0
 def test_normalize_outputdir_absolute_path(self, dir_session):
     os.chdir(dir_session['path'])
     absolute_path = os.path.join(dir_session['path'], 'drivers')
     outputdir = helpers.normalize_outputdir(absolute_path)
     assert outputdir == absolute_path
Exemplo n.º 21
0
 def test_normalize_outputdir_beginning_dot_backslash(self, dir_session):
     os.chdir(dir_session['path'])
     outputdir = helpers.normalize_outputdir('.\\example')
     expected = os.path.join(dir_session['path'], 'example')
     assert outputdir == expected
Exemplo n.º 22
0
 def test_normalize_outputdir_beginning_slash(self, dir_session):
     os.chdir(dir_session['path'])
     outputdir = helpers.normalize_outputdir('/example')
     expected = os.path.abspath('/example')
     assert outputdir == expected
Exemplo n.º 23
0
 def test_normalize_outputdir_no_slashes(self, dir_session):
     os.chdir(dir_session['path'])
     outputdir = helpers.normalize_outputdir('example')
     expected = os.path.join(dir_session['path'], 'example')
     assert outputdir == expected
Exemplo n.º 24
0
 def test_normalize_outputdir_None_drivers_path_exists(self, dir_function):
     os.chdir(dir_function['path'])
     drivers_path = os.path.join(dir_function['path'], 'drivers')
     os.makedirs(drivers_path)
     outputdir = helpers.normalize_outputdir(None)
     assert outputdir == drivers_path
Exemplo n.º 25
0
 def test_clean(self, dir_function, test_utils, caplog):
     os.chdir(dir_function['path'])
     outputdir = helpers.normalize_outputdir()
     test_utils.create_test_files(outputdir)
     clean(outputdir)
     assert len(os.listdir(outputdir)) == 0