MCPcopy Create free account
hub / github.com/alibaba/open-code-review / TestResolveInput_MergeCommit

Function TestResolveInput_MergeCommit

internal/diff/git_resolve_test.go:111–142  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

109}
110
111func TestResolveInput_MergeCommit(t *testing.T) {
112 repo := initBareRepo(t)
113 writeCommit(t, repo, "a.txt", "one\n", "root")
114 root := gitOut(t, repo, "rev-parse", "HEAD")
115 // Determine the current branch name (main or master).
116 mainBranch := gitOut(t, repo, "rev-parse", "--abbrev-ref", "HEAD")
117
118 runGitTest(t, repo, "checkout", "-q", "-b", "side")
119 writeCommit(t, repo, "b.txt", "side\n", "side change")
120
121 runGitTest(t, repo, "checkout", "-q", mainBranch)
122 writeCommit(t, repo, "c.txt", "mainline\n", "main change")
123 firstParent := gitOut(t, repo, "rev-parse", "HEAD")
124 runGitTest(t, repo, "merge", "-q", "--no-ff", "-m", "merge side", "side")
125 merge := gitOut(t, repo, "rev-parse", "HEAD")
126
127 if merge == root {
128 t.Fatal("merge commit setup failed: HEAD did not advance")
129 }
130
131 p := NewCommitProvider(repo, merge, nil)
132 got := p.ResolveInput(context.Background())
133 if got.ResolvedHead != merge {
134 t.Errorf("ResolvedHead = %q, want %q", got.ResolvedHead, merge)
135 }
136 if got.ResolvedBase != firstParent {
137 t.Errorf("ResolvedBase = %q, want first parent %q", got.ResolvedBase, firstParent)
138 }
139 if want := firstParent + ".." + merge; got.ExactRange != want {
140 t.Errorf("ExactRange = %q, want %q", got.ExactRange, want)
141 }
142}
143
144func TestResolveInput_Workspace(t *testing.T) {
145 repo := initRepoWithChange(t) // one commit + working-tree change

Callers

nothing calls this directly

Calls 6

initBareRepoFunction · 0.85
writeCommitFunction · 0.85
gitOutFunction · 0.85
runGitTestFunction · 0.85
NewCommitProviderFunction · 0.85
ResolveInputMethod · 0.80

Tested by

no test coverage detected