package auth_test import ( "context" "testing" "chat-agent-system/internal/auth" "chat-agent-system/internal/config" ) func TestService_DisabledUserRevokesSession(t *testing.T) { cfg := &config.Config{Env: "dev", AdminUsername: "admin", AdminPassword: "admin123"} store := auth.NewMemoryStore(cfg) sessions := auth.NewMemorySessionStore() svc := auth.NewService(store, sessions, cfg) ctx := context.Background() sess, err := svc.Login(ctx, "zhanggong", "123456") if err != nil { t.Fatalf("login: %v", err) } if _, err := svc.GetUserByToken(ctx, sess.Token); err != nil { t.Fatalf("token should work before disable: %v", err) } if _, err := svc.UpdateUserStatus(ctx, 2, auth.StatusDisabled); err != nil { t.Fatalf("disable: %v", err) } if _, err := svc.GetUserByToken(ctx, sess.Token); err == nil { t.Fatal("expected disabled user token to be rejected") } }