gogmagog/models/user_test.go
2021-01-12 11:17:03 -06:00

80 lines
1.7 KiB
Go

package models_test
import (
"fmt"
"gitea.deepak.science/deepak/gogmagog/models"
"github.com/stretchr/testify/assert"
"testing"
)
func TestModelUsers(t *testing.T) {
assert := assert.New(t)
a1 := &models.Action{ActionID: 3}
a2 := &models.Action{ActionID: 4}
p := &models.Plan{PlanID: 6}
ss := &multiStore{
[]*models.Action{a1, a2},
[]*models.Plan{p}}
m := models.New(ss)
user, err := m.User(3)
assert.Nil(err)
assert.NotNil(user)
}
func TestErrorUsers(t *testing.T) {
assert := assert.New(t)
m := getErrorModel(fmt.Errorf("err"))
user, err := m.User(3)
assert.Nil(user)
assert.NotNil(err)
}
func TestCreateUser(t *testing.T) {
assert := assert.New(t)
username := "test"
displayName := "Ted Est"
pass := "abc"
u := &models.CreateUserRequest{Username: username, DisplayName: displayName, Password: pass}
ss := &multiStore{
[]*models.Action{},
[]*models.Plan{}}
m := models.New(ss)
_, err := m.CreateUser(u)
assert.Nil(err)
}
func TestCreateUserFailValidation(t *testing.T) {
assert := assert.New(t)
username := ""
displayName := "Ted Est"
pass := "abc"
u := &models.CreateUserRequest{Username: username, DisplayName: displayName, Password: pass}
ss := &multiStore{
[]*models.Action{},
[]*models.Plan{}}
m := models.New(ss)
_, err := m.CreateUser(u)
assert.NotNil(err)
}
func TestCreateUserFailValidationPassword(t *testing.T) {
assert := assert.New(t)
username := "aoeu"
displayName := "Ted Est"
pass := ""
u := &models.CreateUserRequest{Username: username, DisplayName: displayName, Password: pass}
ss := &multiStore{
[]*models.Action{},
[]*models.Plan{}}
m := models.New(ss)
_, err := m.CreateUser(u)
assert.NotNil(err)
}