def test_should_write_unicode_file(self): with TemporaryDirectory() as path: file_list_path = os.path.join(path, 'out.lst') save_csv_or_tsv_file_list(file_list_path, [UNICODE_FILE_1], column='url') assert load_csv_or_tsv_file_list(file_list_path, column='url') == [UNICODE_FILE_1]
def test_should_write_multiple_file_paths(self): with TemporaryDirectory() as path: file_list_path = os.path.join(path, 'out.csv') save_csv_or_tsv_file_list(file_list_path, [FILE_1, FILE_2], column='url') assert load_csv_or_tsv_file_list(file_list_path, column='url') == [FILE_1, FILE_2]
def test_should_raise_exception_if_column_name_is_invalid(self): with pytest.raises(ValueError): with NamedTemporaryFile('w') as f: f.write('\n'.join(['url', FILE_1, FILE_2])) f.flush() assert load_csv_or_tsv_file_list(f.name, 'xyz') == [FILE_1, FILE_2]
def test_should_read_unicode_file(self): with NamedTemporaryFile('wb') as f: f.write('\n'.join(['url', UNICODE_FILE_1]).encode('utf-8')) f.flush() assert load_csv_or_tsv_file_list(f.name, 'url') == [UNICODE_FILE_1]
def test_should_read_multiple_file_paths_from_file_without_header(self): with NamedTemporaryFile('w') as f: f.write('\n'.join([FILE_1, FILE_2])) f.flush() assert load_csv_or_tsv_file_list(f.name, 0, header=False) == [FILE_1, FILE_2]
def test_should_read_multiple_file_paths_from_file_with_header_using_column_index( self): with NamedTemporaryFile('w') as f: f.write('\n'.join(['url', FILE_1, FILE_2])) f.flush() assert load_csv_or_tsv_file_list(f.name, 0) == [FILE_1, FILE_2]
def test_should_apply_limit(self): with NamedTemporaryFile('w') as f: f.write('\n'.join(['url', FILE_1, FILE_2])) f.flush() assert load_csv_or_tsv_file_list(f.name, 'url', limit=1) == [FILE_1]