SMQ-3095 - Add users events tests (#3240)

Signed-off-by: Felix Gateru <felix.gateru@gmail.com>
This commit is contained in:
Felix Gateru
2025-12-01 19:51:24 +03:00
committed by GitHub
parent 27b72db52e
commit 1a8d11acdd
4 changed files with 1218 additions and 33 deletions
-17
View File
@@ -22,7 +22,6 @@ var (
_ supermq.Response = (*createUserRes)(nil)
_ supermq.Response = (*changeUserStatusRes)(nil)
_ supermq.Response = (*usersPageRes)(nil)
_ supermq.Response = (*viewMembersRes)(nil)
_ supermq.Response = (*passResetReqRes)(nil)
_ supermq.Response = (*passChangeRes)(nil)
_ supermq.Response = (*updateUserRes)(nil)
@@ -158,22 +157,6 @@ func (res usersPageRes) Empty() bool {
return false
}
type viewMembersRes struct {
users.User `json:",inline"`
}
func (res viewMembersRes) Code() int {
return http.StatusOK
}
func (res viewMembersRes) Headers() map[string]string {
return map[string]string{}
}
func (res viewMembersRes) Empty() bool {
return false
}
type changeUserStatusRes struct {
users.User `json:",inline"`
}
-16
View File
@@ -54,7 +54,6 @@ var (
_ events.Event = (*listUserEvent)(nil)
_ events.Event = (*searchUserEvent)(nil)
_ events.Event = (*identifyUserEvent)(nil)
_ events.Event = (*generateResetTokenEvent)(nil)
_ events.Event = (*issueTokenEvent)(nil)
_ events.Event = (*refreshTokenEvent)(nil)
_ events.Event = (*resetSecretEvent)(nil)
@@ -457,21 +456,6 @@ func (ise identifyUserEvent) Encode() (map[string]any, error) {
}, nil
}
type generateResetTokenEvent struct {
email string
host string
requestID string
}
func (req generateResetTokenEvent) Encode() (map[string]any, error) {
return map[string]any{
"operation": generateResetToken,
"email": req.email,
"host": req.host,
"request_id": req.requestID,
}, nil
}
type issueTokenEvent struct {
username string
requestID string
+58
View File
@@ -0,0 +1,58 @@
// Copyright (c) Abstract Machines
// SPDX-License-Identifier: Apache-2.0
package events_test
import (
"context"
"fmt"
"log"
"os"
"testing"
"github.com/ory/dockertest/v3"
"github.com/redis/go-redis/v9"
"github.com/redis/go-redis/v9/maintnotifications"
)
var (
storeClient *redis.Client
storeURL string
)
func TestMain(m *testing.M) {
pool, err := dockertest.NewPool("")
if err != nil {
log.Fatalf("Could not connect to docker: %s", err)
}
container, err := pool.Run("docker.io/redis", "8.2.2-alpine3.22", nil)
if err != nil {
log.Fatalf("Could not start container: %s", err)
}
storeURL = fmt.Sprintf("redis://localhost:%s/0", container.GetPort("6379/tcp"))
opts, err := redis.ParseURL(storeURL)
if err != nil {
log.Fatalf("Could not parse redis URL: %s", err)
}
opts.MaintNotificationsConfig = &maintnotifications.Config{
Mode: maintnotifications.ModeDisabled,
}
if err := pool.Retry(func() error {
storeClient = redis.NewClient(opts)
return storeClient.Ping(context.Background()).Err()
}); err != nil {
log.Fatalf("Could not connect to docker: %s", err)
}
code := m.Run()
if err := pool.Purge(container); err != nil {
log.Fatalf("Could not purge container: %s", err)
}
os.Exit(code)
}
File diff suppressed because it is too large Load Diff