diff options
author | Lunny Xiao <xiaolunwen@gmail.com> | 2025-05-27 03:00:22 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-05-26 19:00:22 +0000 |
commit | 688da55f543f82265cc7df2bd1cf2bce53188b7a (patch) | |
tree | f24539a5c6ae3eaa37b3e1b61996a3ccac1e2a35 /models/git/commit_status_test.go | |
parent | ab9691291d313aedab7b459c42e1e1dd15f05461 (diff) | |
download | gitea-688da55f543f82265cc7df2bd1cf2bce53188b7a.tar.gz gitea-688da55f543f82265cc7df2bd1cf2bce53188b7a.zip |
Split GetLatestCommitStatus as two functions (#34535)
Extract from #34531. This will reduce unnecessary count operation in
databases.
---------
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Diffstat (limited to 'models/git/commit_status_test.go')
-rw-r--r-- | models/git/commit_status_test.go | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/models/git/commit_status_test.go b/models/git/commit_status_test.go index 37d785e938..a01d030e71 100644 --- a/models/git/commit_status_test.go +++ b/models/git/commit_status_test.go @@ -26,7 +26,7 @@ func TestGetCommitStatuses(t *testing.T) { repo1 := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{ID: 1}) - sha1 := "1234123412341234123412341234123412341234" + sha1 := "1234123412341234123412341234123412341234" // the mocked commit ID in test fixtures statuses, maxResults, err := db.FindAndCount[git_model.CommitStatus](db.DefaultContext, &git_model.CommitStatusOptions{ ListOptions: db.ListOptions{Page: 1, PageSize: 50}, @@ -256,3 +256,26 @@ func TestCommitStatusesHideActionsURL(t *testing.T) { assert.Empty(t, statuses[0].TargetURL) assert.Equal(t, "https://mycicd.org/1", statuses[1].TargetURL) } + +func TestGetCountLatestCommitStatus(t *testing.T) { + assert.NoError(t, unittest.PrepareTestDatabase()) + + repo1 := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{ID: 1}) + + sha1 := "1234123412341234123412341234123412341234" // the mocked commit ID in test fixtures + + commitStatuses, err := git_model.GetLatestCommitStatus(db.DefaultContext, repo1.ID, sha1, db.ListOptions{ + Page: 1, + PageSize: 2, + }) + assert.NoError(t, err) + assert.Len(t, commitStatuses, 2) + assert.Equal(t, structs.CommitStatusFailure, commitStatuses[0].State) + assert.Equal(t, "ci/awesomeness", commitStatuses[0].Context) + assert.Equal(t, structs.CommitStatusError, commitStatuses[1].State) + assert.Equal(t, "deploy/awesomeness", commitStatuses[1].Context) + + count, err := git_model.CountLatestCommitStatus(db.DefaultContext, repo1.ID, sha1) + assert.NoError(t, err) + assert.EqualValues(t, 3, count) +} |