def test_fs_file_set(self): tempdir = self.example_tree() fileset = sbrowse.make_fileset(tempdir) self.assertEquals( list(fileset.list_files("")), ["bar", "foo", "mysubdir", "mysubdir/jam"]) self.assertEquals(list(fileset.grep_files("", "blah")), []) self.assertEquals(list(fileset.grep_files("", "hello")), ["foo", "bar"]) self.check_file_set(fileset)
def test_git_file_set(self): tempdir = self.example_tree() subprocess.check_call(["git", "init", "-q"], cwd=tempdir) subprocess.check_call(["git", "add", "foo"], cwd=tempdir) subprocess.check_call(["git", "add", "mysubdir/jam"], cwd=tempdir) fileset = sbrowse.make_fileset(tempdir) self.assertEquals(list(fileset.list_files("")), ["foo", "mysubdir/jam"]) # "bar" has not been git-added, so shouldn't be listed. self.assertEquals(list(fileset.grep_files("", "hello")), ["foo"]) self.assertEquals(list(fileset.grep_files("", "Hello")), ["foo"]) self.check_file_set(fileset)
def test_combined_file_set(self): tempdir1 = self.make_temp_dir() write_file(os.path.join(tempdir1, "foo"), "qux") os.mkdir(os.path.join(tempdir1, "subdir")) tempdir2 = self.make_temp_dir() write_file(os.path.join(tempdir2, "bar"), "quux") fileset = sbrowse.CombinedFileSet({ "aa": sbrowse.make_fileset(tempdir1), "bb": sbrowse.make_fileset(tempdir2)}) self.assertEquals(fileset.is_dir(""), True) self.assertEquals(fileset.is_dir("aa"), True) self.assertEquals(fileset.is_dir("aa/subdir"), True) self.assertEquals(fileset.is_dir("aa/foo"), False) self.assertEquals(fileset.list_dir(""), ["aa", "bb"]) self.assertEquals(fileset.list_dir("aa"), ["foo", "subdir"]) self.assertEquals(list(fileset.list_files("aa")), ["foo", "subdir"]) self.assertEquals(list(fileset.grep_files("aa", "qu")), ["foo"]) self.assertEquals(list(fileset.list_files("")), ["aa", "aa/foo", "aa/subdir", "bb", "bb/bar"]) self.assertEquals(list(fileset.grep_files("", "qux")), ["aa/foo"]) self.assertEquals(list(fileset.grep_files("", "quux")), ["bb/bar"])
def test_svn_file_set(self): # Invoking SVN is slow compared with the rest of the tests. # I think it is because SVN sleeps for upto 1 second. repo_dir = self.make_temp_dir() subprocess.check_call(["svnadmin", "create", repo_dir]) tempdir = self.example_tree() subprocess.check_call(["svn", "checkout", "-q", "file://%s" % repo_dir, tempdir]) subprocess.check_call(["svn", "add", "-q", "foo", "mysubdir"], cwd=tempdir) fileset = sbrowse.make_fileset(tempdir) self.assertEquals(list(fileset.list_files("")), ["mysubdir/jam", "mysubdir", "foo"]) # "bar" has not been git-added, so shouldn't be listed. self.assertEquals(list(fileset.grep_files("", "hello")), ["foo"]) self.assertEquals(list(fileset.grep_files("", "Hello")), ["foo"]) self.check_file_set(fileset)