package voiceroomrocket import ( "context" "testing" "time" "chatapp3-golang/internal/model" ) func TestGetStatusDisabledDoesNotInitRoomStatus(t *testing.T) { service, db := newTestService(t) ctx := context.Background() now := time.Now() if err := db.Create(&model.VoiceRoomRocketConfig{ ID: 1, SysOrigin: "LIKEI", Enabled: false, Timezone: "Asia/Riyadh", MaxLevel: 6, RankingTopLimit: 100, RewardRecordKeepDays: 35, BroadcastDurationSeconds: 7, InRoomRewardDelaySeconds: 10, CreateTime: now, UpdateTime: now, }).Error; err != nil { t.Fatalf("create config: %v", err) } resp, err := service.GetStatus(ctx, AuthUser{SysOrigin: "LIKEI"}, 9001) if err != nil { t.Fatalf("GetStatus error = %v", err) } if resp.Enabled { t.Fatalf("enabled = true, want false") } if !resp.Configured { t.Fatalf("configured = false, want true") } if resp.Status != statusDisabled { t.Fatalf("status = %q, want %q", resp.Status, statusDisabled) } if len(resp.Levels) != 0 { t.Fatalf("levels len = %d, want 0", len(resp.Levels)) } var statusCount int64 if err := db.Model(&model.VoiceRoomRocketStatus{}).Count(&statusCount).Error; err != nil { t.Fatalf("count status: %v", err) } if statusCount != 0 { t.Fatalf("status rows = %d, want 0", statusCount) } }