Files
authorizer/server/test/resolvers_test.go

68 lines
2.0 KiB
Go
Raw Normal View History

2022-01-17 11:32:13 +05:30
package test
import (
"testing"
"github.com/authorizerdev/authorizer/server/constants"
"github.com/authorizerdev/authorizer/server/db"
"github.com/authorizerdev/authorizer/server/env"
"github.com/authorizerdev/authorizer/server/envstore"
)
func TestResolvers(t *testing.T) {
databases := map[string]string{
2022-02-28 07:55:01 +05:30
constants.DbTypeSqlite: "../../data.db",
// constants.DbTypeArangodb: "http://localhost:8529",
// constants.DbTypeMongodb: "mongodb://localhost:27017",
2022-01-17 11:32:13 +05:30
}
2022-02-28 07:55:01 +05:30
envstore.EnvStoreObj.UpdateEnvVariable(constants.StringStoreIdentifier, constants.EnvKeyVersion, "test")
2022-01-17 11:32:13 +05:30
for dbType, dbURL := range databases {
2022-03-02 17:42:31 +05:30
s := testSetup()
2022-02-28 07:55:01 +05:30
envstore.EnvStoreObj.UpdateEnvVariable(constants.StringStoreIdentifier, constants.EnvKeyDatabaseURL, dbURL)
envstore.EnvStoreObj.UpdateEnvVariable(constants.StringStoreIdentifier, constants.EnvKeyDatabaseType, dbType)
2022-01-31 11:35:24 +05:30
defer s.Server.Close()
2022-03-02 17:42:31 +05:30
err := db.InitDB()
if err != nil {
t.Errorf("Error initializing database: %s", err)
}
2022-01-17 11:32:13 +05:30
// clean the persisted config for test to use fresh config
2022-01-21 13:34:04 +05:30
envData, err := db.Provider.GetEnv()
2022-01-17 11:32:13 +05:30
if err == nil {
2022-01-29 17:02:44 +05:30
envData.EnvData = ""
2022-01-21 13:34:04 +05:30
db.Provider.UpdateEnv(envData)
2022-01-17 11:32:13 +05:30
}
env.PersistEnv()
2022-03-02 17:42:31 +05:30
envstore.EnvStoreObj.UpdateEnvVariable(constants.StringStoreIdentifier, constants.EnvKeyEnv, "test")
envstore.EnvStoreObj.UpdateEnvVariable(constants.BoolStoreIdentifier, constants.EnvKeyIsProd, false)
2022-01-17 11:32:13 +05:30
t.Run("should pass tests for "+dbType, func(t *testing.T) {
// admin tests
adminSignupTests(t, s)
verificationRequestsTest(t, s)
usersTest(t, s)
deleteUserTest(t, s)
updateUserTest(t, s)
adminLoginTests(t, s)
adminLogoutTests(t, s)
adminSessionTests(t, s)
updateEnvTests(t, s)
envTests(t, s)
2022-01-17 11:32:13 +05:30
// user tests
loginTests(t, s)
signupTests(t, s)
forgotPasswordTest(t, s)
resendVerifyEmailTests(t, s)
resetPasswordTest(t, s)
verifyEmailTest(t, s)
sessionTests(t, s)
profileTests(t, s)
updateProfileTests(t, s)
magicLinkLoginTests(t, s)
logoutTests(t, s)
metaTests(t, s)
})
}
}