forked from baron/baron-sso
네이버 계정 정합성 맞춤
This commit is contained in:
@@ -689,6 +689,37 @@ test.describe("User Management", () => {
|
||||
await expect(page).toHaveURL(/.*\/users$/, { timeout: 10000 });
|
||||
});
|
||||
|
||||
test("should show a Korean policy message when an internal domain user is created as personal", async ({
|
||||
page,
|
||||
}) => {
|
||||
await page.route(/\/admin\/users$/, async (route) => {
|
||||
if (route.request().method() !== "POST") {
|
||||
return route.fallback();
|
||||
}
|
||||
return route.fulfill({
|
||||
status: 400,
|
||||
json: {
|
||||
error:
|
||||
"internal email domain cannot be assigned to personal tenant: user@hanmaceng.co.kr",
|
||||
},
|
||||
});
|
||||
});
|
||||
|
||||
await page.goto("/users/new");
|
||||
await expect(page.getByText(/사용자 추가/i).first()).toBeVisible();
|
||||
|
||||
await page.getByRole("tab", { name: /개인 회원/i }).click();
|
||||
await page.locator('input[name="name"]').fill("Internal User");
|
||||
await page.locator('input[name="email"]').fill("user@hanmaceng.co.kr");
|
||||
await page.getByRole("button", { name: /생성/i }).click();
|
||||
|
||||
await expect(
|
||||
page.getByText(
|
||||
/내부 도메인 사용자는 개인 소속으로 생성하거나 변경할 수 없습니다/,
|
||||
),
|
||||
).toBeVisible();
|
||||
});
|
||||
|
||||
test("should export users through the authenticated API client", async ({
|
||||
page,
|
||||
}) => {
|
||||
@@ -1032,6 +1063,43 @@ test.describe("User Management", () => {
|
||||
expect(createPayload).toBeUndefined();
|
||||
});
|
||||
|
||||
test("should open Hanmac family tenant picker without submitting the user create form", async ({
|
||||
page,
|
||||
}) => {
|
||||
let createRequests = 0;
|
||||
|
||||
await page.route(/\/admin\/users(\?.*)?$/, async (route) => {
|
||||
if (route.request().method() === "POST") {
|
||||
createRequests += 1;
|
||||
return route.fulfill({
|
||||
status: 201,
|
||||
json: {
|
||||
id: "new-user-id",
|
||||
name: "Family User",
|
||||
email: "family@test.com",
|
||||
},
|
||||
});
|
||||
}
|
||||
return route.fallback();
|
||||
});
|
||||
|
||||
await page.goto("/users/new");
|
||||
await page.getByTestId("add-appointment-btn").click();
|
||||
await expect(page.getByTestId("appointment-row-0")).toBeVisible();
|
||||
|
||||
await page.getByRole("button", { name: "한맥가족에서 선택" }).click();
|
||||
|
||||
await expect(page).toHaveURL(/\/users\/new$/);
|
||||
await expect(page.getByRole("dialog")).toBeVisible();
|
||||
const pickerSrc = await page
|
||||
.getByTestId("appointment-tenant-picker-frame")
|
||||
.getAttribute("src");
|
||||
expect(decodeURIComponent(pickerSrc ?? "")).toContain(
|
||||
"tenantId=hanmac-family-id",
|
||||
);
|
||||
expect(createRequests).toBe(0);
|
||||
});
|
||||
|
||||
test("should hide Hanmac family subtree and system tenants when creating a non-family user", async ({
|
||||
page,
|
||||
}) => {
|
||||
|
||||
Reference in New Issue
Block a user