Tests: Add unit tests

This commit is contained in:
graciousgrey
2023-06-28 16:07:06 +02:00
parent 83d10ea00e
commit 19699c49c0
4 changed files with 137 additions and 0 deletions

View File

@@ -3,6 +3,8 @@ package form
import (
"testing"
"github.com/photoprism/photoprism/pkg/authn"
"github.com/stretchr/testify/assert"
)
@@ -29,6 +31,17 @@ func TestUser_Username(t *testing.T) {
})
}
func TestUser_Provider(t *testing.T) {
t.Run("Empty", func(t *testing.T) {
form := &User{UserName: "", UserEmail: "test@test.com", Password: "passwd", AuthProvider: ""}
assert.Equal(t, authn.ProviderDefault, form.Provider())
})
t.Run("Valid", func(t *testing.T) {
form := &User{UserName: "John", UserEmail: "test@test.com", Password: "passwd", AuthProvider: "local"}
assert.Equal(t, authn.ProviderLocal, form.Provider())
})
}
func TestUser_Email(t *testing.T) {
t.Run("Empty", func(t *testing.T) {
form := &User{UserName: "foobar", UserEmail: "", Password: "passwd"}
@@ -43,3 +56,25 @@ func TestUser_Email(t *testing.T) {
assert.Equal(t, "", form.Email())
})
}
func TestUser_Role(t *testing.T) {
t.Run("Empty", func(t *testing.T) {
form := &User{UserName: "", UserEmail: "test@test.com", Password: "passwd", UserRole: ""}
assert.Equal(t, "", form.Role())
})
t.Run("Valid", func(t *testing.T) {
form := &User{UserName: "John", UserEmail: "test@test.com", Password: "passwd", UserRole: "admin"}
assert.Equal(t, "admin", form.Role())
})
t.Run("Invalid", func(t *testing.T) {
form := &User{UserName: "John", UserEmail: "test@test.com", Password: "passwd", UserRole: "ad&*min"}
assert.Equal(t, "admin", form.Role())
})
}
func TestUser_Attr(t *testing.T) {
t.Run("Empty", func(t *testing.T) {
form := &User{UserName: "", UserEmail: "test@test.com", Password: "passwd", UserAttr: ""}
assert.Equal(t, "", form.Attr())
})
}