diff options
author | Máximo Cuadros <mcuadros@gmail.com> | 2017-12-04 23:47:55 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-04 23:47:55 +0100 |
commit | f96d46d38f67604f204711ea0e2832e6e047e2ad (patch) | |
tree | e0c303923da76c8fd6b2471262a657b06181dd2a /worktree_test.go | |
parent | 02723bf0e5b97fc7855467b2fad700a4f318ab3e (diff) | |
parent | d43f17481253b76b558bfe4cc1e1b17bfb0c74e4 (diff) | |
download | go-git-f96d46d38f67604f204711ea0e2832e6e047e2ad.tar.gz |
Merge pull request #675 from darkowlzz/git-clean
git: worktree, add Clean() method for git clean
Diffstat (limited to 'worktree_test.go')
-rw-r--r-- | worktree_test.go | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/worktree_test.go b/worktree_test.go index 1bdf946..46c1faa 100644 --- a/worktree_test.go +++ b/worktree_test.go @@ -1252,3 +1252,38 @@ func (s *WorktreeSuite) TestMoveToExistent(c *C) { c.Assert(hash.IsZero(), Equals, true) c.Assert(err, Equals, ErrDestinationExists) } + +func (s *WorktreeSuite) TestClean(c *C) { + fs := fixtures.ByTag("dirty").One().Worktree() + + // Open the repo. + fs, err := fs.Chroot("repo") + c.Assert(err, IsNil) + r, err := PlainOpen(fs.Root()) + c.Assert(err, IsNil) + + wt, err := r.Worktree() + c.Assert(err, IsNil) + + // Status before cleaning. + status, err := wt.Status() + c.Assert(len(status), Equals, 2) + + err = wt.Clean(&CleanOptions{}) + c.Assert(err, IsNil) + + // Status after cleaning. + status, err = wt.Status() + c.Assert(err, IsNil) + + c.Assert(len(status), Equals, 1) + + // Clean with Dir: true. + err = wt.Clean(&CleanOptions{Dir: true}) + c.Assert(err, IsNil) + + status, err = wt.Status() + c.Assert(err, IsNil) + + c.Assert(len(status), Equals, 0) +} |