feat: game lobby service
This commit is contained in:
@@ -121,7 +121,10 @@ func (publisher *Publisher) PublishProfileChanged(ctx context.Context, event por
|
||||
|
||||
values := buildEnvelope(ports.ProfileChangedEventType, event.UserID.String(), event.OccurredAt, event.Source.String(), traceIDFromContext(ctx, event.TraceID))
|
||||
values["operation"] = string(event.Operation)
|
||||
values["race_name"] = event.RaceName.String()
|
||||
values["user_name"] = event.UserName.String()
|
||||
if !event.DisplayName.IsZero() {
|
||||
values["display_name"] = event.DisplayName.String()
|
||||
}
|
||||
|
||||
return publisher.publish(ctx, "publish profile changed event", values)
|
||||
}
|
||||
|
||||
@@ -27,12 +27,13 @@ func TestPublisherPublishesFlatRedisStreamEntry(t *testing.T) {
|
||||
|
||||
occurredAt := time.Unix(1_775_240_000, 0).UTC()
|
||||
err = publisher.PublishProfileChanged(context.Background(), ports.ProfileChangedEvent{
|
||||
UserID: common.UserID("user-123"),
|
||||
OccurredAt: occurredAt,
|
||||
Source: common.Source("gateway_self_service"),
|
||||
TraceID: "4bf92f3577b34da6a3ce929d0e0e4736",
|
||||
Operation: ports.ProfileChangedOperationUpdated,
|
||||
RaceName: common.RaceName("Nova Prime"),
|
||||
UserID: common.UserID("user-123"),
|
||||
OccurredAt: occurredAt,
|
||||
Source: common.Source("gateway_self_service"),
|
||||
TraceID: "4bf92f3577b34da6a3ce929d0e0e4736",
|
||||
Operation: ports.ProfileChangedOperationUpdated,
|
||||
UserName: common.UserName("player-abcdefgh"),
|
||||
DisplayName: common.DisplayName("NovaPrime"),
|
||||
})
|
||||
require.NoError(t, err)
|
||||
|
||||
@@ -45,7 +46,8 @@ func TestPublisherPublishesFlatRedisStreamEntry(t *testing.T) {
|
||||
require.Equal(t, "gateway_self_service", entries[0].Values["source"])
|
||||
require.Equal(t, "4bf92f3577b34da6a3ce929d0e0e4736", entries[0].Values["trace_id"])
|
||||
require.Equal(t, string(ports.ProfileChangedOperationUpdated), entries[0].Values["operation"])
|
||||
require.Equal(t, "Nova Prime", entries[0].Values["race_name"])
|
||||
require.Equal(t, "player-abcdefgh", entries[0].Values["user_name"])
|
||||
require.Equal(t, "NovaPrime", entries[0].Values["display_name"])
|
||||
|
||||
for index := 0; index < 20; index++ {
|
||||
err = publisher.PublishSettingsChanged(context.Background(), ports.SettingsChangedEvent{
|
||||
@@ -77,10 +79,11 @@ func TestPublisherRejectsInvalidEventBeforeXAdd(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
|
||||
err = publisher.PublishProfileChanged(context.Background(), ports.ProfileChangedEvent{
|
||||
UserID: common.UserID("user-123"),
|
||||
OccurredAt: time.Unix(1_775_240_000, 0).UTC(),
|
||||
Operation: ports.ProfileChangedOperationUpdated,
|
||||
RaceName: common.RaceName("Nova Prime"),
|
||||
UserID: common.UserID("user-123"),
|
||||
OccurredAt: time.Unix(1_775_240_000, 0).UTC(),
|
||||
Operation: ports.ProfileChangedOperationUpdated,
|
||||
UserName: common.UserName("player-abcdefgh"),
|
||||
DisplayName: common.DisplayName("NovaPrime"),
|
||||
})
|
||||
require.Error(t, err)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user