def test_does_not_find_files_when_dot_is_omitted(self, directory_structure): root, *_ = directory_structure files = list(fileutil.find_files_by_extension(str(root), "java")) assert not files
def test_works_when_no_files_found(self, directory_structure): root, *_ = directory_structure files = list( fileutil.find_files_by_extension(str(root), ".doesnotexist")) assert not files
def test_find_python_files(self, directory_structure): root, _, python_files, *r = directory_structure files = list(fileutil.find_files_by_extension(str(root), ".py")) filepaths = [str(file.resolve()) for file in files] assert sorted(filepaths) == sorted(python_files)
def test_find_java_files(self, directory_structure): root, java_files, *_ = directory_structure files = list(fileutil.find_files_by_extension(str(root), ".java")) filepaths = [str(file.resolve()) for file in files] assert sorted(filepaths) == sorted(java_files)
def test_find_java_py_md_files(self, directory_structure): """Try to find all three types at the same time.""" root, java_files, python_files, md_files = directory_structure expected_files = list( itertools.chain(java_files, python_files, md_files)) files = list( fileutil.find_files_by_extension(str(root), ".java", ".py", ".md")) filepaths = [str(file.resolve()) for file in files] assert sorted(filepaths) == sorted(expected_files)
def post_clone(self, repo: plug.StudentRepo, api: plug.PlatformAPI) -> plug.Result: """Run ``javac`` on all .java files in the repo. Args: repo: A student repo. api: A platform API class instance. Returns: a Result specifying the outcome. """ ignore = list(self.javac_ignore or []) java_files = [ str(file) for file in fileutil.find_files_by_extension(repo.path, ".java") if file.name not in ignore ] if not java_files: msg = "no .java files found" status = plug.Status.WARNING return plug.Result(PLUGIN_NAME, status, msg) status, msg = self._javac(java_files) return plug.Result(PLUGIN_NAME, status, msg)
def test_throws_exception_when_no_extension_is_provided( self, directory_structure): root, *_ = directory_structure with pytest.raises(ValueError): list(fileutil.find_files_by_extension(str(root)))