def __init__(self, args): self.args = args """argparse arguments""" self.cwd = os.getcwd() """The current working directory""" self.input_files = [] """A list of all input files.""" if isinstance(self.args.input_files, str): self.input_files = [self.args.input_files] else: self.input_files = list_files.list_files(self.args.input_files) self.common_path = \ list_files.common_path(self.input_files) """The common path prefix of all input files.""" if self.common_path == '': self.common_path = self.cwd self.first_input_file = FilePath(self.input_files[0], absolute=True) """The first input file.""" self.input_is_pdf = False """Boolean that indicates if the first file is a pdf.""" if self.first_input_file.extension.lower() == 'pdf': self.input_is_pdf = True
def test_default_glob(self, os_walk, os_path_isdir): os_walk.return_value = (('/data', (), ('a.txt', 'b.txt')), ) os_path_isdir.return_value = True self.assertEqual(list_files(['/data'], default_glob='*.txt'), ['/data/a.txt', '/data/b.txt'])
def test_glob_no_match(self, os_walk): os_walk.return_value = (('/data', (), ('a.txt', 'b.txt')), ) self.assertEqual(list_files(['/data/*.py']), [])
def test_glob(self, os_walk): os_walk.return_value = (('/data', (), ('a.txt', 'b.txt')), ) result = list_files(['/data/*.txt']) os_walk.assert_called_with('/data') self.assertEqual(result, ['/data/a.txt', '/data/b.txt'])
def test_single_file(self): self.assertEqual(list_files(['/mnt/lol.txt']), ['/mnt/lol.txt'])
def test_multiple_files(self): files = ['a.txt', 'b.txt'] self.assertEqual(list_files(files), files)