Skip to content

Commit 27654db

Browse files
cdonnellytxJanDeDobbeleer
authored andcommitted
fix(git): tests covering revert/sequencer
1 parent 3dd512f commit 27654db

File tree

1 file changed

+86
-0
lines changed

1 file changed

+86
-0
lines changed

src/segment_git_test.go

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,10 @@ type detachedContext struct {
8080
tagName string
8181
cherryPick bool
8282
cherryPickSHA string
83+
revert bool
84+
revertSHA string
85+
sequencer bool
86+
sequencerTodo string
8387
merge bool
8488
mergeHEAD string
8589
status string
@@ -97,8 +101,12 @@ func setupHEADContextEnv(context *detachedContext) *git {
97101
env.On("getFileContent", "/rebase-apply/last").Return(context.total)
98102
env.On("getFileContent", "/rebase-apply/head-name").Return(context.origin)
99103
env.On("getFileContent", "/CHERRY_PICK_HEAD").Return(context.cherryPickSHA)
104+
env.On("getFileContent", "/REVERT_HEAD").Return(context.revertSHA)
100105
env.On("getFileContent", "/MERGE_MSG").Return(fmt.Sprintf("Merge branch '%s' into %s", context.mergeHEAD, context.onto))
101106
env.On("hasFilesInDir", "", "CHERRY_PICK_HEAD").Return(context.cherryPick)
107+
env.On("hasFilesInDir", "", "REVERT_HEAD").Return(context.revert)
108+
env.On("hasFolder", "sequencer").Return(context.sequencer)
109+
env.On("getFileContent", "/sequencer/todo").Return(context.sequencerTodo)
102110
env.On("hasFilesInDir", "", "MERGE_MSG").Return(context.merge)
103111
env.On("hasFilesInDir", "", "MERGE_HEAD").Return(context.merge)
104112
env.mockGitCommand(context.currentCommit, "rev-parse", "--short", "HEAD")
@@ -211,6 +219,84 @@ func TestGetGitHEADContextCherryPickOnTag(t *testing.T) {
211219
assert.Equal(t, want, got)
212220
}
213221

222+
func TestGetGitHEADContextRevertOnBranch(t *testing.T) {
223+
want := "\uf0e2 pickme onto \ue0a0main"
224+
context := &detachedContext{
225+
currentCommit: "whatever",
226+
branchName: "main",
227+
revert: true,
228+
revertSHA: "pickme",
229+
}
230+
g := setupHEADContextEnv(context)
231+
got := g.getGitHEADContext("main")
232+
assert.Equal(t, want, got)
233+
}
234+
235+
func TestGetGitHEADContextRevertOnTag(t *testing.T) {
236+
want := "\uf0e2 pickme onto \uf412v3.4.6"
237+
context := &detachedContext{
238+
currentCommit: "whatever",
239+
tagName: "v3.4.6",
240+
revert: true,
241+
revertSHA: "pickme",
242+
}
243+
g := setupHEADContextEnv(context)
244+
got := g.getGitHEADContext("")
245+
assert.Equal(t, want, got)
246+
}
247+
248+
func TestGetGitHEADContextSequencerCherryPickOnBranch(t *testing.T) {
249+
want := "\ue29b pickme onto \ue0a0main"
250+
context := &detachedContext{
251+
currentCommit: "whatever",
252+
branchName: "main",
253+
sequencer: true,
254+
sequencerTodo: "pick pickme",
255+
}
256+
g := setupHEADContextEnv(context)
257+
got := g.getGitHEADContext("main")
258+
assert.Equal(t, want, got)
259+
}
260+
261+
func TestGetGitHEADContextSequencerCherryPickOnTag(t *testing.T) {
262+
want := "\ue29b pickme onto \uf412v3.4.6"
263+
context := &detachedContext{
264+
currentCommit: "whatever",
265+
tagName: "v3.4.6",
266+
sequencer: true,
267+
sequencerTodo: "pick pickme",
268+
}
269+
g := setupHEADContextEnv(context)
270+
got := g.getGitHEADContext("")
271+
assert.Equal(t, want, got)
272+
}
273+
274+
func TestGetGitHEADContextSequencerRevertOnBranch(t *testing.T) {
275+
want := "\ue29b pickme onto \ue0a0main"
276+
context := &detachedContext{
277+
currentCommit: "whatever",
278+
branchName: "main",
279+
sequencer: true,
280+
sequencerTodo: "revert pickme",
281+
}
282+
g := setupHEADContextEnv(context)
283+
got := g.getGitHEADContext("main")
284+
assert.Equal(t, want, got)
285+
}
286+
287+
func TestGetGitHEADContextSequencerRevertOnTag(t *testing.T) {
288+
want := "\ue29b pickme onto \uf412v3.4.6"
289+
context := &detachedContext{
290+
currentCommit: "whatever",
291+
tagName: "v3.4.6",
292+
sequencer: true,
293+
sequencerTodo: "revert pickme",
294+
}
295+
g := setupHEADContextEnv(context)
296+
got := g.getGitHEADContext("")
297+
assert.Equal(t, want, got)
298+
}
299+
214300
func TestGetGitHEADContextMerge(t *testing.T) {
215301
want := "\ue727 \ue0a0feat into \ue0a0main"
216302
context := &detachedContext{

0 commit comments

Comments
 (0)