From 8b7b398a7477299987e148fa9a352d184ed19fa3 Mon Sep 17 00:00:00 2001 From: wuhuizuo Date: Tue, 21 May 2024 12:04:22 +0800 Subject: [PATCH] fix(tibuild): fix sql Signed-off-by: wuhuizuo --- tibuild/pkg/rest/repo/dev_build_repo.go | 10 +++++----- tibuild/pkg/rest/repo/dev_build_repo_test.go | 3 ++- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/tibuild/pkg/rest/repo/dev_build_repo.go b/tibuild/pkg/rest/repo/dev_build_repo.go index 7f08d5e..4d59078 100644 --- a/tibuild/pkg/rest/repo/dev_build_repo.go +++ b/tibuild/pkg/rest/repo/dev_build_repo.go @@ -52,22 +52,22 @@ func (m DevBuildRepo) Update(ctx context.Context, id int, req DevBuild) (resp *D return &req, nil } -func (m DevBuildRepo) List(ctx context.Context, option DevBuildListOption) (resp []DevBuild, err error) { +func (m DevBuildRepo) List(ctx context.Context, option DevBuildListOption) (resp []*DevBuild, err error) { db := m.Db.Order("created_at DESC").Offset(int(option.Offset)).Limit(int(option.Size)) if option.Hotfix != nil { - db = db.Where(&DevBuild{Spec: DevBuildSpec{IsHotfix: *option.Hotfix}}, *option.Hotfix) + db = db.Where(&DevBuild{Spec: DevBuildSpec{IsHotfix: *option.Hotfix}}, "IsHotfix") } if option.CreatedBy != nil && *option.CreatedBy != "" { - db = db.Where(&DevBuild{Meta: DevBuildMeta{CreatedBy: *option.CreatedBy}}, *option.CreatedBy) + db = db.Where(&DevBuild{Meta: DevBuildMeta{CreatedBy: *option.CreatedBy}}, "CreatedBy") } - result := []DevBuild{} + result := []*DevBuild{} if err := db.Find(&result).Error; err != nil { return nil, fmt.Errorf("%s%w", err.Error(), ErrInternalError) } for i := range result { - err = outofDB(&result[i]) + err = outofDB(result[i]) if err != nil { return nil, err } diff --git a/tibuild/pkg/rest/repo/dev_build_repo_test.go b/tibuild/pkg/rest/repo/dev_build_repo_test.go index d03d740..1265633 100644 --- a/tibuild/pkg/rest/repo/dev_build_repo_test.go +++ b/tibuild/pkg/rest/repo/dev_build_repo_test.go @@ -46,7 +46,8 @@ func TestDevBuildList(t *testing.T) { require.NoError(t, err) repo := DevBuildRepo{Db: odb} rows := sqlmock.NewRows([]string{"id"}).AddRow(1).AddRow(2) - mock.ExpectQuery("SELECT \\* FROM `dev_builds` WHERE `dev_builds`.`is_hotfix` = \\? ORDER BY created_at DESC LIMIT 10 OFFSET 5").WithArgs(false).WillReturnRows(rows) + mock.ExpectQuery("SELECT \\* FROM `dev_builds` WHERE `dev_builds`.`is_hotfix` = \\? ORDER BY created_at DESC LIMIT \\? OFFSET \\?"). + WithArgs(false, 10, 5).WillReturnRows(rows) entities, err := repo.List(context.TODO(), DevBuildListOption{Offset: 5, Size: 10, Hotfix: &[]bool{false}[0]}) require.NoError(t, err) require.Equal(t, 2, len(entities))