def test_get_gitignore_ignorefile_dir_upper_level(self): git = Git(self._root_dir) file_double_dir = os.path.join("dir1", "dir2", "file1") data_dir1 = os.path.join(self._root_dir, file_double_dir) ignore_file_dir = os.path.realpath(os.path.join("aa", "bb")) with self.assertRaises(FileNotInTargetSubdirError): git._get_gitignore(data_dir1, ignore_file_dir)
def test_get_gitignore_ignorefile_dir(self): git = Git(self._root_dir) file_double_dir = os.path.join("dir1", "dir2", "file1") data_dir1 = os.path.join(self._root_dir, file_double_dir) dir1_real1 = os.path.realpath("dir1") entry, gitignore = git._get_gitignore(data_dir1, dir1_real1) self.assertEqual(entry, "/dir2/file1") gitignore1 = os.path.join(self._root_dir, "dir1", Git.GITIGNORE) self.assertEqual(gitignore, gitignore1) triple_dir = os.path.join("dir1", "dir2", "dir3") data_dir2 = os.path.join(self._root_dir, triple_dir) dir1_real2 = os.path.realpath("dir1") entry, gitignore = git._get_gitignore(data_dir2, dir1_real2) self.assertEqual(entry, "/dir2/dir3") gitignore2 = os.path.join(self._root_dir, "dir1", Git.GITIGNORE) self.assertEqual(gitignore, gitignore2)
def test_get_gitignore_ignorefile_dir(self, git, repo_dir): git = Git(repo_dir._root_dir) file_double_dir = os.path.join("dir1", "dir2", "file1") data_dir1 = os.path.join(repo_dir._root_dir, file_double_dir) dir1_real1 = os.path.realpath("dir1") entry, gitignore = git._get_gitignore(data_dir1, dir1_real1) assert entry == "/dir2/file1" gitignore1 = os.path.join(repo_dir._root_dir, "dir1", Git.GITIGNORE) assert gitignore == gitignore1 triple_dir = os.path.join("dir1", "dir2", "dir3") data_dir2 = os.path.join(repo_dir._root_dir, triple_dir) dir1_real2 = os.path.realpath("dir1") entry, gitignore = git._get_gitignore(data_dir2, dir1_real2) assert entry == "/dir2/dir3" gitignore2 = os.path.join(repo_dir._root_dir, "dir1", Git.GITIGNORE) assert gitignore == gitignore2