diff --git a/backend/shared/domain/events/event_test.go b/backend/shared/domain/events/event_test.go index 553a9af..0d3ffc4 100644 --- a/backend/shared/domain/events/event_test.go +++ b/backend/shared/domain/events/event_test.go @@ -3,6 +3,7 @@ package events // Tests for event base fields and event type string behavior. import ( + "context" "testing" "time" @@ -26,3 +27,39 @@ func TestNewBaseEvent(t *testing.T) { func TestEventType_String(t *testing.T) { require.Equal(t, "game_session.started", GameSessionStarted.String()) } + +// TestEventType_NonEmpty ensures all event type constants are non-empty strings. +func TestEventType_NonEmpty(t *testing.T) { + types := []EventType{ + GameSessionStarted, + GameSessionEnded, + GameSessionTimedOut, + AnswerSubmitted, + HintRequested, + QuestionAnswered, + UserRegistered, + UserEmailVerified, + UserDeleted, + QuestionCreated, + QuestionUpdated, + QuestionDeleted, + ScoreUpdated, + LeaderboardRefreshed, + } + + for _, eventType := range types { + require.NotEmpty(t, eventType.String()) + } +} + +type dummyEventBus struct{} + +func (d *dummyEventBus) Publish(_ context.Context, _ Event) error { + return nil +} + +func (d *dummyEventBus) Subscribe(_ EventHandler) error { + return nil +} + +var _ EventBus = (*dummyEventBus)(nil)