mirror of
https://github.com/absmach/magistrala.git
synced 2026-06-23 04:10:28 +00:00
SMQ-3095 - Add users events tests (#3240)
Signed-off-by: Felix Gateru <felix.gateru@gmail.com>
This commit is contained in:
@@ -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"`
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
Reference in New Issue
Block a user