snapshot of https://github.com/traggo/server.git (master, 2026-09-16; blobs > 131072B omitted)
Some checks failed
build / build (push) Failing after 3s
Some checks failed
build / build (push) Failing after 3s
This commit is contained in:
52
user/create_test.go
Normal file
52
user/create_test.go
Normal file
@@ -0,0 +1,52 @@
|
||||
package user
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
"github.com/traggo/server/generated/gqlmodel"
|
||||
"github.com/traggo/server/model"
|
||||
"github.com/traggo/server/test"
|
||||
)
|
||||
|
||||
func TestGQL_CreateUser_succeeds_addsUser(t *testing.T) {
|
||||
createPassword = fakePassword
|
||||
db := test.InMemoryDB(t)
|
||||
defer db.Close()
|
||||
|
||||
resolver := ResolverForUser{DB: db.DB, PassStrength: 4}
|
||||
user, err := resolver.CreateUser(context.Background(), "jmattheis", "unicorn", true)
|
||||
|
||||
require.Nil(t, err)
|
||||
expected := &gqlmodel.User{
|
||||
Name: "jmattheis",
|
||||
Admin: true,
|
||||
ID: 1,
|
||||
}
|
||||
require.Equal(t, expected, user)
|
||||
assertUserExist(t, db, model.User{
|
||||
Name: "jmattheis",
|
||||
Pass: unicornPW,
|
||||
ID: 1,
|
||||
Admin: true,
|
||||
})
|
||||
assertUserCount(t, db, 1)
|
||||
}
|
||||
|
||||
func TestGQL_CreateUser_fails_userAlreadyExists(t *testing.T) {
|
||||
createPassword = fakePassword
|
||||
db := test.InMemoryDB(t)
|
||||
defer db.Close()
|
||||
db.Create(&model.User{
|
||||
Name: "jmattheis",
|
||||
Pass: unicornPW,
|
||||
ID: 1,
|
||||
Admin: true,
|
||||
})
|
||||
|
||||
resolver := ResolverForUser{DB: db.DB, PassStrength: 4}
|
||||
_, err := resolver.CreateUser(context.Background(), "jmattheis", "unicorn", true)
|
||||
require.EqualError(t, err, "user with name 'jmattheis' does already exist")
|
||||
assertUserCount(t, db, 1)
|
||||
}
|
||||
Reference in New Issue
Block a user