모바일 메뉴와 주요 화면 UX 개선 및 시각 검수
This commit is contained in:
parent
89b5093ec7
commit
e8b770e4d9
50 changed files with 3189 additions and 457 deletions
|
|
@ -281,6 +281,31 @@ async function mockAdminAiSession(page: Page, state: AdminAiMockState) {
|
|||
}
|
||||
|
||||
test.describe("full sweep: admin ai operations", () => {
|
||||
test("제공자 조회 실패를 표시하고 다시 확인할 수 있다", async ({ page }) => {
|
||||
await mockAdminAiSession(page, createMockState());
|
||||
let attempts = 0;
|
||||
let recovered = false;
|
||||
await page.route("**/api/admin/providers", async (route) => {
|
||||
attempts += 1;
|
||||
await route.fulfill({
|
||||
status: recovered ? 200 : 500,
|
||||
contentType: "application/json",
|
||||
body: JSON.stringify(!recovered
|
||||
? { detail: "제공자 상태 조회 실패" }
|
||||
: { providers: [], gateway_sync: { synced: false, detail: "연결 설정 대기" } }),
|
||||
});
|
||||
});
|
||||
await page.goto("/admin/ai");
|
||||
const panel = page.getByTestId("provider-connections-panel");
|
||||
await expect(panel.locator(".aic-runtime")).toHaveText("연결 상태 확인 실패");
|
||||
const failedAttempts = attempts;
|
||||
recovered = true;
|
||||
await panel.getByRole("button", { name: "다시 확인" }).click();
|
||||
await expect(panel.locator(".aic-runtime")).toHaveText("적용 대기");
|
||||
await expect(panel.getByRole("alert")).toHaveCount(0);
|
||||
expect(attempts).toBeGreaterThan(failedAttempts);
|
||||
});
|
||||
|
||||
// checklist: admin-ai-guard-pending-approval
|
||||
test("redirects a pending-approval admin from /admin/ai to /pending", async ({ page }) => {
|
||||
const state = createMockState({
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue