MCPcopy
hub / github.com/go-git/go-git / TestResetMerge

Method TestResetMerge

worktree_test.go:1279–1312  ·  view source on GitHub ↗
(c *C)

Source from the content-addressed store, hash-verified

1277}
1278
1279func (s *WorktreeSuite) TestResetMerge(c *C) {
1280 fs := memfs.New()
1281 w := &Worktree{
1282 r: s.Repository,
1283 Filesystem: fs,
1284 }
1285
1286 commitA := plumbing.NewHash("918c48b83bd081e863dbe1b80f8998f058cd8294")
1287 commitB := plumbing.NewHash("35e85108805c84807bc66a02d91535e1e24b38b9")
1288
1289 err := w.Checkout(&CheckoutOptions{})
1290 c.Assert(err, IsNil)
1291
1292 err = w.Reset(&ResetOptions{Mode: MergeReset, Commit: commitA})
1293 c.Assert(err, IsNil)
1294
1295 branch, err := w.r.Reference(plumbing.Master, false)
1296 c.Assert(err, IsNil)
1297 c.Assert(branch.Hash(), Equals, commitA)
1298
1299 f, err := fs.Create(".gitignore")
1300 c.Assert(err, IsNil)
1301 _, err = f.Write([]byte("foo"))
1302 c.Assert(err, IsNil)
1303 err = f.Close()
1304 c.Assert(err, IsNil)
1305
1306 err = w.Reset(&ResetOptions{Mode: MergeReset, Commit: commitB})
1307 c.Assert(err, Equals, ErrUnstagedChanges)
1308
1309 branch, err = w.r.Reference(plumbing.Master, false)
1310 c.Assert(err, IsNil)
1311 c.Assert(branch.Hash(), Equals, commitA)
1312}
1313
1314func (s *WorktreeSuite) TestResetHard(c *C) {
1315 fs := memfs.New()

Callers

nothing calls this directly

Calls 8

CheckoutMethod · 0.95
ResetMethod · 0.95
NewHashFunction · 0.92
ReferenceMethod · 0.65
HashMethod · 0.65
CloseMethod · 0.65
CreateMethod · 0.45
WriteMethod · 0.45

Tested by

no test coverage detected