From ed56a0f5fcdee24e6804a0070770d80840183a81 Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Sat, 4 May 2024 02:36:09 +0800 Subject: [PATCH] Add test for NewBoard --- models/project/board_test.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/models/project/board_test.go b/models/project/board_test.go index 2841edb861..fa40330b74 100644 --- a/models/project/board_test.go +++ b/models/project/board_test.go @@ -4,6 +4,8 @@ package project import ( + "fmt" + "strings" "testing" "code.gitea.io/gitea/models/db" @@ -98,3 +100,26 @@ func Test_MoveColumnsOnProject(t *testing.T) { assert.EqualValues(t, columns[2].ID, columnsAfter[1].ID) assert.EqualValues(t, columns[0].ID, columnsAfter[2].ID) } + +func Test_NewBoard(t *testing.T) { + assert.NoError(t, unittest.PrepareTestDatabase()) + + project1 := unittest.AssertExistsAndLoadBean(t, &Project{ID: 1}) + columns, err := project1.GetBoards(db.DefaultContext) + assert.NoError(t, err) + assert.Len(t, columns, 3) + + for i := 0; i < maxProjectColumns-3; i++ { + err := NewBoard(db.DefaultContext, &Board{ + Title: fmt.Sprintf("board-%d", i+4), + ProjectID: project1.ID, + }) + assert.NoError(t, err) + } + err = NewBoard(db.DefaultContext, &Board{ + Title: "board-21", + ProjectID: project1.ID, + }) + assert.Error(t, err) + assert.True(t, strings.Contains(err.Error(), "maximum number of columns reached")) +}