Skip to content

Commit 583bea2

Browse files
committed
Add test for commit_status_test.go in services/pull/
1 parent 8ab9e5b commit 583bea2

File tree

1 file changed

+57
-0
lines changed

1 file changed

+57
-0
lines changed

services/pull/commit_status_test.go

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
// Copyright 2024 The Gitea Authors.
2+
// All rights reserved.
3+
// SPDX-License-Identifier: MIT
4+
5+
package pull
6+
7+
import (
8+
"testing"
9+
10+
git_model "code.gitea.io/gitea/models/git"
11+
"code.gitea.io/gitea/modules/structs"
12+
"github.com/stretchr/testify/assert"
13+
)
14+
15+
func TestMergeRequiredContextsCommitStatus(t *testing.T) {
16+
testCases := [][]*git_model.CommitStatus{
17+
{
18+
{Context: "Build 1", State: structs.CommitStatusSuccess},
19+
{Context: "Build 2", State: structs.CommitStatusSuccess},
20+
{Context: "Build 3", State: structs.CommitStatusSuccess},
21+
},
22+
{
23+
{Context: "Build 1", State: structs.CommitStatusSuccess},
24+
{Context: "Build 2", State: structs.CommitStatusSuccess},
25+
{Context: "Build 2t", State: structs.CommitStatusPending},
26+
},
27+
{
28+
{Context: "Build 1", State: structs.CommitStatusSuccess},
29+
{Context: "Build 2", State: structs.CommitStatusSuccess},
30+
{Context: "Build 2t", State: structs.CommitStatusFailure},
31+
},
32+
{
33+
{Context: "Build 1", State: structs.CommitStatusSuccess},
34+
{Context: "Build 2", State: structs.CommitStatusSuccess},
35+
{Context: "Build 2t", State: structs.CommitStatusSuccess},
36+
},
37+
}
38+
testCasesRequiredContexts := [][]string{
39+
{"Build*"},
40+
{"Build*", "Build 2t*"},
41+
{"Build*", "Build 2t*"},
42+
{"Build*", "Build 2t*", "Build 3*"},
43+
}
44+
45+
testCasesExpected := []structs.CommitStatusState{
46+
structs.CommitStatusSuccess,
47+
structs.CommitStatusPending,
48+
structs.CommitStatusFailure,
49+
structs.CommitStatusPending,
50+
}
51+
52+
for i, commitStatuses := range testCases {
53+
if MergeRequiredContextsCommitStatus(commitStatuses, testCasesRequiredContexts[i]) != testCasesExpected[i] {
54+
assert.Fail(t, "Test case failed", "Test case %d failed", i+1)
55+
}
56+
}
57+
}

0 commit comments

Comments
 (0)