mirror of
https://codeberg.org/davrot/forgejo.git
synced 2025-05-20 05:00:01 +02:00
Decouple unit test code from business code (#17623)
This commit is contained in:
parent
7f802631c5
commit
df64fa4865
136 changed files with 1058 additions and 830 deletions
|
@ -12,11 +12,12 @@ import (
|
|||
"time"
|
||||
|
||||
"code.gitea.io/gitea/models/db"
|
||||
"code.gitea.io/gitea/models/unittest"
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestIssue_ReplaceLabels(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
|
||||
testSuccess := func(issueID int64, labelIDs []int64) {
|
||||
issue := db.AssertExistsAndLoadBean(t, &Issue{ID: issueID}).(*Issue)
|
||||
|
@ -40,7 +41,7 @@ func TestIssue_ReplaceLabels(t *testing.T) {
|
|||
}
|
||||
|
||||
func Test_GetIssueIDsByRepoID(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
|
||||
ids, err := GetIssueIDsByRepoID(1)
|
||||
assert.NoError(t, err)
|
||||
|
@ -48,7 +49,7 @@ func Test_GetIssueIDsByRepoID(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestIssueAPIURL(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
issue := db.AssertExistsAndLoadBean(t, &Issue{ID: 1}).(*Issue)
|
||||
err := issue.LoadAttributes()
|
||||
|
||||
|
@ -57,7 +58,7 @@ func TestIssueAPIURL(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestGetIssuesByIDs(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
testSuccess := func(expectedIssueIDs, nonExistentIssueIDs []int64) {
|
||||
issues, err := GetIssuesByIDs(append(expectedIssueIDs, nonExistentIssueIDs...))
|
||||
assert.NoError(t, err)
|
||||
|
@ -72,7 +73,7 @@ func TestGetIssuesByIDs(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestGetParticipantIDsByIssue(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
|
||||
checkParticipants := func(issueID int64, userIDs []int) {
|
||||
issue, err := GetIssueByID(issueID)
|
||||
|
@ -106,7 +107,7 @@ func TestIssue_ClearLabels(t *testing.T) {
|
|||
{3, 2}, // pull-request, has no labels
|
||||
}
|
||||
for _, test := range tests {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
issue := db.AssertExistsAndLoadBean(t, &Issue{ID: test.issueID}).(*Issue)
|
||||
doer := db.AssertExistsAndLoadBean(t, &User{ID: test.doerID}).(*User)
|
||||
assert.NoError(t, issue.ClearLabels(doer))
|
||||
|
@ -115,7 +116,7 @@ func TestIssue_ClearLabels(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestUpdateIssueCols(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
issue := db.AssertExistsAndLoadBean(t, &Issue{}).(*Issue)
|
||||
|
||||
const newTitle = "New Title for unit test"
|
||||
|
@ -135,7 +136,7 @@ func TestUpdateIssueCols(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestIssues(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
for _, test := range []struct {
|
||||
Opts IssuesOptions
|
||||
ExpectedIssueIDs []int64
|
||||
|
@ -190,7 +191,7 @@ func TestIssues(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestGetUserIssueStats(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
for _, test := range []struct {
|
||||
Opts UserIssueStatsOptions
|
||||
ExpectedIssueStats IssueStats
|
||||
|
@ -287,7 +288,7 @@ func TestGetUserIssueStats(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestIssue_loadTotalTimes(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
ms, err := GetIssueByID(2)
|
||||
assert.NoError(t, err)
|
||||
assert.NoError(t, ms.loadTotalTimes(db.GetEngine(db.DefaultContext)))
|
||||
|
@ -295,7 +296,7 @@ func TestIssue_loadTotalTimes(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestIssue_SearchIssueIDsByKeyword(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
total, ids, err := SearchIssueIDsByKeyword("issue2", []int64{1}, 10, 0)
|
||||
assert.NoError(t, err)
|
||||
assert.EqualValues(t, 1, total)
|
||||
|
@ -319,7 +320,7 @@ func TestIssue_SearchIssueIDsByKeyword(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestGetRepoIDsForIssuesOptions(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
user := db.AssertExistsAndLoadBean(t, &User{ID: 2}).(*User)
|
||||
for _, test := range []struct {
|
||||
Opts IssuesOptions
|
||||
|
@ -377,7 +378,7 @@ func testInsertIssue(t *testing.T, title, content string, expectIndex int64) *Is
|
|||
}
|
||||
|
||||
func TestIssue_InsertIssue(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
|
||||
// there are 5 issues and max index is 5 on repository 1, so this one should 6
|
||||
issue := testInsertIssue(t, "my issue1", "special issue's comments?", 6)
|
||||
|
@ -391,7 +392,7 @@ func TestIssue_InsertIssue(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestIssue_ResolveMentions(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
|
||||
testSuccess := func(owner, repo, doer string, mentions []string, expected []int64) {
|
||||
o := db.AssertExistsAndLoadBean(t, &User{LowerName: owner}).(*User)
|
||||
|
@ -423,7 +424,7 @@ func TestIssue_ResolveMentions(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestResourceIndex(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
|
||||
var wg sync.WaitGroup
|
||||
for i := 0; i < 100; i++ {
|
||||
|
@ -437,7 +438,7 @@ func TestResourceIndex(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestCorrectIssueStats(t *testing.T) {
|
||||
assert.NoError(t, db.PrepareTestDatabase())
|
||||
assert.NoError(t, unittest.PrepareTestDatabase())
|
||||
|
||||
// Because the condition is to have chunked database look-ups,
|
||||
// We have to more issues than `maxQueryParameters`, we will insert.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue