63 lines
1.5 KiB
Go
63 lines
1.5 KiB
Go
package services
|
|
|
|
import (
|
|
"testing"
|
|
"vibeStonk/server/repository"
|
|
"vibeStonk/server/util"
|
|
)
|
|
|
|
func TestAuthService_RegisterUser(t *testing.T) {
|
|
configs := repository.GetTestConfigs()
|
|
testUserName, testUserPassword := util.GetTestUserCredentials()
|
|
for _, config := range configs {
|
|
service, err := NewAuthService(config)
|
|
if err != nil {
|
|
t.Errorf("error creating service: %v", err)
|
|
}
|
|
|
|
user, err := service.RegisterUser(testUserName, "Test", testUserPassword)
|
|
if err != nil {
|
|
t.Errorf("expected no error, got: %+v", err)
|
|
}
|
|
|
|
if user.UserName != testUserName || user.PrefName != "Test" {
|
|
t.Fail()
|
|
}
|
|
|
|
user, err = service.RegisterUser(testUserName, "Test", testUserPassword)
|
|
if err == nil {
|
|
t.Error("expected error, got: nil")
|
|
}
|
|
if user != nil {
|
|
t.Errorf("expected nil user, got : %+v", user)
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
func TestAuthService_AuthenticateUser(t *testing.T) {
|
|
configs := repository.GetTestConfigs()
|
|
testUserName, testUserPassword := util.GetTestUserCredentials()
|
|
|
|
for _, config := range configs {
|
|
service, err := NewAuthService(config)
|
|
if err != nil {
|
|
t.Errorf("expected nil error, got: %+v", err)
|
|
}
|
|
|
|
result, err := service.AuthenticateUser(testUserName, testUserPassword)
|
|
if err != nil {
|
|
t.Errorf("expected valid login, got err: %+v", err)
|
|
}
|
|
|
|
vUser, err := service.AuthenticateToken(result.Token)
|
|
if err != nil {
|
|
t.Errorf("expected to validate new session, got err: %+v", err)
|
|
}
|
|
|
|
if vUser.UserName != testUserName {
|
|
t.Errorf("expected to get the test user, got: %+v", vUser)
|
|
}
|
|
}
|
|
}
|