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

Function TestResolveInput_MergeCommit

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

Source from the content-addressed store, hash-verified

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