개선관리 요구사항과 Google 로그인을 완료
This commit is contained in:
parent
cc0a15b7c6
commit
2a39636163
112 changed files with 10166 additions and 527 deletions
|
|
@ -42,7 +42,7 @@ const READY_AUTH_CONFIG = {
|
|||
login_path: "/auth/login?provider=saml",
|
||||
},
|
||||
],
|
||||
allowed_email_domains: ["hs.ac.kr", "twentyoz.kr"],
|
||||
allowed_email_domains: [],
|
||||
redirect_uri: "http://127.0.0.1:8000/auth/callback",
|
||||
dev_login_enabled: true,
|
||||
};
|
||||
|
|
@ -153,7 +153,7 @@ test.describe("full sweep auth", () => {
|
|||
});
|
||||
|
||||
// 검증 checklist: auth-login-generic-google-button
|
||||
test("secondary Google button shows the second allowed domain and starts the same google OAuth flow", async ({
|
||||
test("both Google buttons advertise unrestricted accounts and start the same OAuth flow", async ({
|
||||
page,
|
||||
}) => {
|
||||
await mockUnauthenticatedMe(page);
|
||||
|
|
@ -175,11 +175,9 @@ test.describe("full sweep auth", () => {
|
|||
|
||||
const secondary = page.locator(".lg-obtn.secondary");
|
||||
await expect(secondary).toBeEnabled();
|
||||
await expect(secondary).toContainText("Google 계정으로 계속");
|
||||
// 서브라벨은 두 번째 허용 도메인을 표시한다.
|
||||
await expect(secondary.locator(".sub")).toHaveText("@twentyoz.kr");
|
||||
// primary 버튼과 동일하게 첫 번째 도메인은 primary 서브라벨에 있다.
|
||||
await expect(page.locator(".lg-obtn.primary .sub")).toHaveText("@hs.ac.kr");
|
||||
await expect(secondary).toContainText("다른 Google 계정 선택");
|
||||
await expect(secondary.locator(".sub")).toHaveText("이메일 확인 후 바로 시작");
|
||||
await expect(page.locator(".lg-obtn.primary .sub")).toHaveText("모든 Google 계정");
|
||||
|
||||
// 클릭 시 primary와 동일한 provider=google 시작 URL로 이동한다.
|
||||
await Promise.all([
|
||||
|
|
@ -189,7 +187,7 @@ test.describe("full sweep auth", () => {
|
|||
});
|
||||
|
||||
// 검증 checklist: auth-login-brand-domain-badges
|
||||
test("brand panel domain badges distinguish checking, unset, and loaded states", async ({
|
||||
test("brand panel Google policy badge distinguishes checking, unset, and ready states", async ({
|
||||
page,
|
||||
}) => {
|
||||
await mockUnauthenticatedMe(page);
|
||||
|
|
@ -198,7 +196,7 @@ test.describe("full sweep auth", () => {
|
|||
/* 응답을 보류해 조회 중 상태를 고정한다 */
|
||||
});
|
||||
await page.goto("/login");
|
||||
await expect(page.locator(".lg-policy")).toContainText("허용 도메인");
|
||||
await expect(page.locator(".lg-policy")).toContainText("Google 로그인");
|
||||
await expect(page.locator(".lg-policy b")).toHaveText("확인 중");
|
||||
|
||||
// 2) 설정 조회 실패: "설정 필요" 배지.
|
||||
|
|
@ -213,14 +211,11 @@ test.describe("full sweep auth", () => {
|
|||
await page.goto("/login");
|
||||
await expect(page.locator(".lg-policy b")).toHaveText("설정 필요");
|
||||
|
||||
// 3) 정상 로드: allowed_email_domains를 배지로 나열.
|
||||
// 3) 정상 로드: 모든 provider-verified Google 계정을 허용한다.
|
||||
await page.unroute(CONFIG_PATTERN);
|
||||
await fulfillConfig(page, READY_AUTH_CONFIG);
|
||||
await page.goto("/login");
|
||||
const badges = page.locator(".lg-policy b");
|
||||
await expect(badges).toHaveCount(2);
|
||||
await expect(badges.nth(0)).toHaveText("hs.ac.kr");
|
||||
await expect(badges.nth(1)).toHaveText("twentyoz.kr");
|
||||
await expect(page.locator(".lg-policy b")).toHaveText("모든 Google 계정");
|
||||
});
|
||||
|
||||
// 검증 checklist: auth-onboarding-avatar-upload
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue