aboutsummaryrefslogtreecommitdiff
path: root/internal/db/repos_test.go
diff options
context:
space:
mode:
authorJoe Chen <jc@unknwon.io>2022-06-11 12:43:56 +0800
committerGitHub <noreply@github.com>2022-06-11 12:43:56 +0800
commit1df62fafb99c03d4d3d4b26c99839d165d5425da (patch)
treeda9308befb456e888518ef397bbe49ae6e510d53 /internal/db/repos_test.go
parent5e32058c13f34b46c69b7cdee6ccc0b7fe3b6df3 (diff)
db: use `context` and go-mockgen for `ReposStore` (#7046)
Diffstat (limited to 'internal/db/repos_test.go')
-rw-r--r--internal/db/repos_test.go101
1 files changed, 53 insertions, 48 deletions
diff --git a/internal/db/repos_test.go b/internal/db/repos_test.go
index d248f3b0..32482506 100644
--- a/internal/db/repos_test.go
+++ b/internal/db/repos_test.go
@@ -5,15 +5,17 @@
package db
import (
+ "context"
"testing"
"time"
"github.com/stretchr/testify/assert"
+ "github.com/stretchr/testify/require"
"gogs.io/gogs/internal/errutil"
)
-func Test_repos(t *testing.T) {
+func TestRepos(t *testing.T) {
if testing.Short() {
t.Skip()
}
@@ -29,15 +31,13 @@ func Test_repos(t *testing.T) {
name string
test func(*testing.T, *repos)
}{
- {"create", test_repos_create},
- {"GetByName", test_repos_GetByName},
+ {"create", reposCreate},
+ {"GetByName", reposGetByName},
} {
t.Run(tc.name, func(t *testing.T) {
t.Cleanup(func() {
err := clearTables(t, db.DB, tables...)
- if err != nil {
- t.Fatal(err)
- }
+ require.NoError(t, err)
})
tc.test(t, db)
})
@@ -47,58 +47,63 @@ func Test_repos(t *testing.T) {
}
}
-func test_repos_create(t *testing.T, db *repos) {
+func reposCreate(t *testing.T, db *repos) {
+ ctx := context.Background()
+
t.Run("name not allowed", func(t *testing.T) {
- _, err := db.create(1, createRepoOpts{
- Name: "my.git",
- })
- expErr := ErrNameNotAllowed{args: errutil.Args{"reason": "reserved", "pattern": "*.git"}}
- assert.Equal(t, expErr, err)
+ _, err := db.create(ctx,
+ 1,
+ createRepoOpts{
+ Name: "my.git",
+ },
+ )
+ wantErr := ErrNameNotAllowed{args: errutil.Args{"reason": "reserved", "pattern": "*.git"}}
+ assert.Equal(t, wantErr, err)
})
t.Run("already exists", func(t *testing.T) {
- _, err := db.create(2, createRepoOpts{
- Name: "repo1",
- })
- if err != nil {
- t.Fatal(err)
- }
-
- _, err = db.create(2, createRepoOpts{
- Name: "repo1",
- })
- expErr := ErrRepoAlreadyExist{args: errutil.Args{"ownerID": int64(2), "name": "repo1"}}
- assert.Equal(t, expErr, err)
+ _, err := db.create(ctx, 2,
+ createRepoOpts{
+ Name: "repo1",
+ },
+ )
+ require.NoError(t, err)
+
+ _, err = db.create(ctx, 2,
+ createRepoOpts{
+ Name: "repo1",
+ },
+ )
+ wantErr := ErrRepoAlreadyExist{args: errutil.Args{"ownerID": int64(2), "name": "repo1"}}
+ assert.Equal(t, wantErr, err)
})
- repo, err := db.create(3, createRepoOpts{
- Name: "repo2",
- })
- if err != nil {
- t.Fatal(err)
- }
+ repo, err := db.create(ctx, 3,
+ createRepoOpts{
+ Name: "repo2",
+ },
+ )
+ require.NoError(t, err)
- repo, err = db.GetByName(repo.OwnerID, repo.Name)
- if err != nil {
- t.Fatal(err)
- }
+ repo, err = db.GetByName(ctx, repo.OwnerID, repo.Name)
+ require.NoError(t, err)
assert.Equal(t, db.NowFunc().Format(time.RFC3339), repo.Created.UTC().Format(time.RFC3339))
}
-func test_repos_GetByName(t *testing.T, db *repos) {
- repo, err := db.create(1, createRepoOpts{
- Name: "repo1",
- })
- if err != nil {
- t.Fatal(err)
- }
+func reposGetByName(t *testing.T, db *repos) {
+ ctx := context.Background()
- _, err = db.GetByName(repo.OwnerID, repo.Name)
- if err != nil {
- t.Fatal(err)
- }
+ repo, err := db.create(ctx, 1,
+ createRepoOpts{
+ Name: "repo1",
+ },
+ )
+ require.NoError(t, err)
+
+ _, err = db.GetByName(ctx, repo.OwnerID, repo.Name)
+ require.NoError(t, err)
- _, err = db.GetByName(1, "bad_name")
- expErr := ErrRepoNotExist{args: errutil.Args{"ownerID": int64(1), "name": "bad_name"}}
- assert.Equal(t, expErr, err)
+ _, err = db.GetByName(ctx, 1, "bad_name")
+ wantErr := ErrRepoNotExist{args: errutil.Args{"ownerID": int64(1), "name": "bad_name"}}
+ assert.Equal(t, wantErr, err)
}