def test_copy_tree(): temp_dir = appdirs.get_temp_dir() dst_name = temp_dir + temp_utils.make_random_name(5) path_temp = temp_dir + temp_utils.make_random_name(5) dst_name_2 = os.path.join(path_temp, temp_utils.make_random_name(3)) os.mkdir(dst_name) file_src = temp_utils.make_temporary_file("test", dir=temp_dir) with pytest.raises(Exception): fs_util.copy_tree(None, "dest") with pytest.raises(Exception): fs_util.copy_tree(temp_dir, None) with pytest.raises(Exception): fs_util.copy_tree("source", "dest") with pytest.raises(Exception): fs_util.copy_tree(file_src, dst_name) with pytest.raises(Exception): fs_util.copy_tree(temp_dir, dst_name, False) with pytest.raises(Exception): fs_util.copy_tree(temp_dir, dst_name_2, create_parent=False) with pytest.raises(Exception): fs_util.copy_tree(temp_dir, '') fs_util.copy_tree(temp_dir, dst_name) pass
def test_rmtree(): temp_dir = appdirs.get_temp_dir() sub_dir_1 = os.path.join(temp_dir, temp_utils.make_random_name(5)) sub_dir_2 = os.path.join(temp_dir, temp_utils.make_random_name(5)) sub_sub_dir = os.path.join(sub_dir_2, temp_utils.make_random_name(3)) os.makedirs(sub_sub_dir) os.makedirs(sub_dir_1) assert os.path.isdir(sub_sub_dir) assert os.path.isdir(sub_dir_1) assert os.path.isdir(sub_dir_2) fs_util.rmtree(None) fs_util.rmtree("gibberish") fs_util.rmtree(temp_dir) assert not os.path.isdir(sub_sub_dir) assert not os.path.isdir(sub_dir_1) assert not os.path.isdir(sub_dir_2) pass
def test_get_list_of_files_and_folders_in_tree(): assert [] == fs_util.get_list_of_files_and_folders_in_tree(None) assert [] == fs_util.get_list_of_files_and_folders_in_tree("gibberish") temp_dir = appdirs.get_temp_dir() sub_dir_1 = os.path.join(temp_dir, temp_utils.make_random_name(5)) sub_dir_2 = os.path.join(temp_dir, temp_utils.make_random_name(5)) sub_sub_dir = os.path.join(sub_dir_2, temp_utils.make_random_name(3)) os.makedirs(sub_sub_dir) os.makedirs(sub_dir_1) f1 = temp_utils.make_temporary_file("test", dir=temp_dir) f2 = temp_utils.make_temporary_file("test2", dir=sub_dir_1) f3 = temp_utils.make_temporary_file("test3", dir=sub_sub_dir) lst = fs_util.get_list_of_files_and_folders_in_tree(temp_dir) assert f1 in lst assert f2 in lst assert f3 in lst assert sub_sub_dir in lst assert sub_dir_1 in lst
def test_remove_read_only_files_once(): temp_dir = appdirs.get_temp_dir() sub_dir_1 = os.path.join(temp_dir, temp_utils.make_random_name(5)) sub_dir_2 = os.path.join(temp_dir, temp_utils.make_random_name(5)) sub_sub_dir = os.path.join(sub_dir_2, temp_utils.make_random_name(3)) os.makedirs(sub_sub_dir) os.makedirs(sub_dir_1) f1 = temp_utils.make_temporary_file("test", dir=temp_dir) f2 = temp_utils.make_temporary_file("test2", dir=sub_dir_1) f3 = temp_utils.make_temporary_file("test3", dir=sub_sub_dir) os.chmod(f1, stat.S_IREAD | stat.S_IRGRP | stat.S_IROTH) os.chmod(f2, stat.S_IREAD | stat.S_IRGRP | stat.S_IROTH) os.chmod(f3, stat.S_IREAD | stat.S_IRGRP | stat.S_IROTH) assert os.path.isdir(temp_dir) assert os.path.isdir(sub_sub_dir) lst = fs_util.remove_read_only_files(temp_dir, recursive=False) assert os.path.isdir(sub_sub_dir) assert os.path.isdir(sub_dir_1)
def test_rename_folder(): temp_dir = appdirs.get_temp_dir() dst_name = temp_dir + temp_utils.make_random_name(5) os.mkdir(dst_name) file_dst = temp_utils.make_temporary_file("test", dir=dst_name) with pytest.raises(Exception): fs_util.rename_folder(None, "dest") with pytest.raises(Exception): fs_util.rename_folder(temp_dir, None) with pytest.raises(Exception): fs_util.rename_folder("fake_path/fake", dst_name) with pytest.raises(Exception): fs_util.rename_folder(temp_dir, file_dst) with pytest.raises(Exception): fs_util.rename_folder(temp_dir, dst_name, False) fs_util.rename_folder("fake_path/fake", dst_name, ignore_empty_src=True) fs_util.rename_folder(temp_dir, dst_name)