def test_clean_clean_repo(self): ext_dep_file_path = os.path.join(test_dir, "hw_ext_dep.json") with open(ext_dep_file_path, "w+") as ext_dep_file: ext_dep_file.write(hw_json_template % uptodate_version) ext_dep_descriptor = EDF.ExternDepDescriptor( ext_dep_file_path).descriptor_contents ext_dep = GitDependency(ext_dep_descriptor) ext_dep.fetch() self.assertTrue(ext_dep.verify(), "Confirm repo is valid and clean") ext_dep.clean() self.assertFalse(os.path.isdir(ext_dep.contents_dir))
def test_clean_no_directory(self): ext_dep_file_path = os.path.join(test_dir, "hw_ext_dep.json") with open(ext_dep_file_path, "w+") as ext_dep_file: ext_dep_file.write(hw_json_template % uptodate_version) ext_dep_descriptor = EDF.ExternDepDescriptor( ext_dep_file_path).descriptor_contents ext_dep = GitDependency(ext_dep_descriptor) self.assertFalse(os.path.isdir(ext_dep.contents_dir), "Confirm not ext dep directory before cleaning") ext_dep.clean() self.assertFalse(os.path.isdir(ext_dep.contents_dir))
def test_clean_dir_but_not_git_repo(self): ext_dep_file_path = os.path.join(test_dir, "hw_ext_dep.json") with open(ext_dep_file_path, "w+") as ext_dep_file: ext_dep_file.write(hw_json_template % invalid_version) ext_dep_descriptor = EDF.ExternDepDescriptor( ext_dep_file_path).descriptor_contents ext_dep = GitDependency(ext_dep_descriptor) os.makedirs(ext_dep._local_repo_root_path, exist_ok=True) with open(os.path.join(ext_dep._local_repo_root_path, "testfile.txt"), 'a') as my_file: my_file.write("Test code\n") ext_dep.clean() self.assertFalse(os.path.isdir(ext_dep.contents_dir))
def test_clean_dirty_git_repo(self): ext_dep_file_path = os.path.join(test_dir, "hw_ext_dep.json") with open(ext_dep_file_path, "w+") as ext_dep_file: ext_dep_file.write(hw_json_template % uptodate_version) ext_dep_descriptor = EDF.ExternDepDescriptor( ext_dep_file_path).descriptor_contents ext_dep = GitDependency(ext_dep_descriptor) ext_dep.fetch() self.assertTrue(ext_dep.verify(), "Confirm repo is valid") # now write a new file with open(os.path.join(ext_dep._local_repo_root_path, "testfile.txt"), 'a') as my_file: my_file.write("Test code to make repo dirty\n") self.assertFalse(ext_dep.verify(), "Confirm repo is dirty") ext_dep.clean() self.assertFalse(os.path.isdir(ext_dep.contents_dir))