Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commite459c19

Browse files
committed
chore: improve e2e tests
1 parent798a054 commite459c19

File tree

4 files changed

+79
-37
lines changed

4 files changed

+79
-37
lines changed

‎site/e2e/api.ts‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ export const createOrganizationSyncSettings = async () => {
8181
"fbd2116a-8961-4954-87ae-e4575bd29ce0",
8282
"13de3eb4-9b4f-49e7-b0f8-0c3728a0d2e2",
8383
],
84-
"idp-org-2":["fbd2116a-8961-4954-87ae-e4575bd29ce0"],
84+
"idp-org-2":["6b39f0f1-6ad8-4981-b2fc-d52aef53ff1b"],
8585
},
8686
organization_assign_default:true,
8787
});
@@ -97,7 +97,7 @@ export const createGroupSyncSettings = async (orgId: string) => {
9797
"fbd2116a-8961-4954-87ae-e4575bd29ce0",
9898
"13de3eb4-9b4f-49e7-b0f8-0c3728a0d2e2",
9999
],
100-
"idp-group-2":["fbd2116a-8961-4954-87ae-e4575bd29ce0"],
100+
"idp-group-2":["6b39f0f1-6ad8-4981-b2fc-d52aef53ff1b"],
101101
},
102102
regex_filter:"@[a-zA-Z0-9]+",
103103
auto_create_missing_groups:true,
@@ -116,7 +116,7 @@ export const createRoleSyncSettings = async (orgId: string) => {
116116
"fbd2116a-8961-4954-87ae-e4575bd29ce0",
117117
"13de3eb4-9b4f-49e7-b0f8-0c3728a0d2e2",
118118
],
119-
"idp-role-2":["fbd2116a-8961-4954-87ae-e4575bd29ce0"],
119+
"idp-role-2":["6b39f0f1-6ad8-4981-b2fc-d52aef53ff1b"],
120120
},
121121
},
122122
orgId,

‎site/e2e/tests/deployment/idpOrgSync.spec.ts‎

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,17 @@ test.beforeEach(async ({ page }) => {
1616
});
1717

1818
test.describe("IdpOrgSyncPage",()=>{
19+
20+
test("show empty table when no org mappings are present",async({ page})=>{
21+
requiresLicense();
22+
awaitpage.goto("/deployment/idp-org-sync",{
23+
waitUntil:"domcontentloaded",
24+
});
25+
26+
awaitexpect(page.getByRole("row",{name:"idp-org-1"})).not.toBeVisible();
27+
awaitexpect(page.getByRole("heading",{name:"No organization mappings"})).toBeVisible();
28+
});
29+
1930
test("add new IdP organization mapping with API",async({ page})=>{
2031
requiresLicense();
2132

@@ -29,14 +40,14 @@ test.describe("IdpOrgSyncPage", () => {
2940
page.getByRole("switch",{name:"Assign Default Organization"}),
3041
).toBeChecked();
3142

32-
awaitexpect(page.getByText("idp-org-1")).toBeVisible();
43+
awaitexpect(page.getByRole("row",{name:"idp-org-1"})).toBeVisible();
3344
awaitexpect(
34-
page.getByText("fbd2116a-8961-4954-87ae-e4575bd29ce0").first(),
45+
page.getByRole("row",{name:"fbd2116a-8961-4954-87ae-e4575bd29ce0"}),
3546
).toBeVisible();
3647

37-
awaitexpect(page.getByText("idp-org-2")).toBeVisible();
48+
awaitexpect(page.getByRole("row",{name:"idp-org-2"})).toBeVisible();
3849
awaitexpect(
39-
page.getByText("fbd2116a-8961-4954-87ae-e4575bd29ce0").last(),
50+
page.getByRole("row",{name:"6b39f0f1-6ad8-4981-b2fc-d52aef53ff1b"}),
4051
).toBeVisible();
4152
});
4253

@@ -47,12 +58,12 @@ test.describe("IdpOrgSyncPage", () => {
4758
waitUntil:"domcontentloaded",
4859
});
4960

50-
awaitexpect(page.getByText("idp-org-1")).toBeVisible();
51-
awaitpage
61+
constrow=page.getByTestId("idp-org-idp-org-1");
62+
awaitexpect(row.getByRole("cell",{name:"idp-org-1"})).toBeVisible();
63+
awaitrow
5264
.getByRole("button",{name:/delete/i})
53-
.first()
5465
.click();
55-
awaitexpect(page.getByText("idp-org-1")).not.toBeVisible();
66+
awaitexpect(row.getByRole("cell",{name:"idp-org-1"})).not.toBeVisible();
5667
awaitexpect(
5768
page.getByText("Organization sync settings updated."),
5869
).toBeVisible();
@@ -67,7 +78,7 @@ test.describe("IdpOrgSyncPage", () => {
6778
constsyncField=page.getByRole("textbox",{
6879
name:"Organization sync field",
6980
});
70-
constsaveButton=page.getByRole("button",{name:/save/i}).first();
81+
constsaveButton=page.getByRole("button",{name:/save/i});
7182

7283
awaitexpect(saveButton).toBeDisabled();
7384

@@ -154,8 +165,8 @@ test.describe("IdpOrgSyncPage", () => {
154165
// Verify new mapping appears in table
155166
constnewRow=page.getByTestId("idp-org-new-idp-org");
156167
awaitexpect(newRow).toBeVisible();
157-
awaitexpect(newRow.getByText("new-idp-org")).toBeVisible();
158-
awaitexpect(newRow.getByText(orgName)).toBeVisible();
168+
awaitexpect(newRow.getByRole("cell",{name:"new-idp-org"})).toBeVisible();
169+
awaitexpect(newRow.getByRole("cell",{name:orgName})).toBeVisible();
159170

160171
awaitexpect(
161172
page.getByText("Organization sync settings updated."),

‎site/e2e/tests/organizations/idpGroupSync.spec.ts‎

Lines changed: 29 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,20 @@ test.beforeEach(async ({ page }) => {
1616
});
1717

1818
test.describe("IdpGroupSyncPage",()=>{
19+
20+
test("show empty table when no group mappings are present",async({ page})=>{
21+
requiresLicense();
22+
constorg=awaitcreateOrganizationWithName(randomName());
23+
awaitpage.goto(`/organizations/${org.name}/idp-sync?tab=groups`,{
24+
waitUntil:"domcontentloaded",
25+
});
26+
27+
awaitexpect(page.getByRole("row",{name:"idp-group-1"})).not.toBeVisible();
28+
awaitexpect(page.getByRole("heading",{name:"No group mappings"})).toBeVisible();
29+
30+
awaitdeleteOrganization(org.name);
31+
});
32+
1933
test("add new IdP group mapping with API",async({ page})=>{
2034
requiresLicense();
2135
constorg=awaitcreateOrganizationWithName(randomName());
@@ -29,14 +43,14 @@ test.describe("IdpGroupSyncPage", () => {
2943
page.getByRole("switch",{name:"Auto create missing groups"}),
3044
).toBeChecked();
3145

32-
awaitexpect(page.getByText("idp-group-1")).toBeVisible();
46+
awaitexpect(page.getByRole("row",{name:"idp-group-1"})).toBeVisible();
3347
awaitexpect(
34-
page.getByText("fbd2116a-8961-4954-87ae-e4575bd29ce0").first(),
48+
page.getByRole("row",{name:"fbd2116a-8961-4954-87ae-e4575bd29ce0"}),
3549
).toBeVisible();
3650

37-
awaitexpect(page.getByText("idp-group-2")).toBeVisible();
51+
awaitexpect(page.getByRole("row",{name:"idp-group-2"})).toBeVisible();
3852
awaitexpect(
39-
page.getByText("fbd2116a-8961-4954-87ae-e4575bd29ce0").last(),
53+
page.getByRole("row",{name:"6b39f0f1-6ad8-4981-b2fc-d52aef53ff1b"}),
4054
).toBeVisible();
4155

4256
awaitdeleteOrganization(org.name);
@@ -51,12 +65,14 @@ test.describe("IdpGroupSyncPage", () => {
5165
waitUntil:"domcontentloaded",
5266
});
5367

54-
awaitexpect(page.getByText("idp-group-1")).toBeVisible();
55-
awaitpage
68+
constrow=page.getByTestId("group-idp-group-1");
69+
awaitexpect(row.getByRole("cell",{name:"idp-group-1"})).toBeVisible();
70+
awaitrow
5671
.getByRole("button",{name:/delete/i})
57-
.first()
5872
.click();
59-
awaitexpect(page.getByText("idp-group-1")).not.toBeVisible();
73+
awaitexpect(
74+
row.getByRole("cell",{name:"idp-group-1"}),
75+
).not.toBeVisible();
6076
awaitexpect(
6177
page.getByText("IdP Group sync settings updated."),
6278
).toBeVisible();
@@ -72,7 +88,7 @@ test.describe("IdpGroupSyncPage", () => {
7288
constsyncField=page.getByRole("textbox",{
7389
name:"Group sync field",
7490
});
75-
constsaveButton=page.getByRole("button",{name:/save/i}).first();
91+
constsaveButton=page.getByRole("button",{name:/save/i});
7692

7793
awaitexpect(saveButton).toBeDisabled();
7894

@@ -151,8 +167,10 @@ test.describe("IdpGroupSyncPage", () => {
151167
// Verify new mapping appears in table
152168
constnewRow=page.getByTestId("group-new-idp-group");
153169
awaitexpect(newRow).toBeVisible();
154-
awaitexpect(newRow.getByText("new-idp-group")).toBeVisible();
155-
awaitexpect(newRow.getByText("Everyone")).toBeVisible();
170+
awaitexpect(
171+
newRow.getByRole("cell",{name:"new-idp-group"}),
172+
).toBeVisible();
173+
awaitexpect(newRow.getByRole("cell",{name:"Everyone"})).toBeVisible();
156174

157175
awaitexpect(
158176
page.getByText("IdP Group sync settings updated."),

‎site/e2e/tests/organizations/idpRoleSync.spec.ts‎

Lines changed: 25 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,20 @@ test.beforeEach(async ({ page }) => {
1616
});
1717

1818
test.describe("IdpRoleSyncPage",()=>{
19+
20+
test("show empty table when no role mappings are present",async({ page})=>{
21+
requiresLicense();
22+
constorg=awaitcreateOrganizationWithName(randomName());
23+
awaitpage.goto(`/organizations/${org.name}/idp-sync?tab=roles`,{
24+
waitUntil:"domcontentloaded",
25+
});
26+
27+
awaitexpect(page.getByRole("row",{name:"idp-role-1"})).not.toBeVisible();
28+
awaitexpect(page.getByRole("heading",{name:"No role mappings"})).toBeVisible();
29+
30+
awaitdeleteOrganization(org.name);
31+
});
32+
1933
test("add new IdP role mapping with API",async({ page})=>{
2034
requiresLicense();
2135
constorg=awaitcreateOrganizationWithName(randomName());
@@ -25,14 +39,14 @@ test.describe("IdpRoleSyncPage", () => {
2539
waitUntil:"domcontentloaded",
2640
});
2741

28-
awaitexpect(page.getByText("idp-role-1")).toBeVisible();
42+
awaitexpect(page.getByRole("row",{name:"idp-role-1"})).toBeVisible();
2943
awaitexpect(
30-
page.getByText("fbd2116a-8961-4954-87ae-e4575bd29ce0").first(),
44+
page.getByRole("row",{name:"fbd2116a-8961-4954-87ae-e4575bd29ce0"}),
3145
).toBeVisible();
3246

33-
awaitexpect(page.getByText("idp-role-2")).toBeVisible();
47+
awaitexpect(page.getByRole("row",{name:"idp-role-2"})).toBeVisible();
3448
awaitexpect(
35-
page.getByText("fbd2116a-8961-4954-87ae-e4575bd29ce0").last(),
49+
page.getByRole("row",{name:"fbd2116a-8961-4954-87ae-e4575bd29ce0"}),
3650
).toBeVisible();
3751

3852
awaitdeleteOrganization(org.name);
@@ -46,13 +60,12 @@ test.describe("IdpRoleSyncPage", () => {
4660
awaitpage.goto(`/organizations/${org.name}/idp-sync?tab=roles`,{
4761
waitUntil:"domcontentloaded",
4862
});
49-
50-
awaitexpect(page.getByText("idp-role-1")).toBeVisible();
51-
awaitpage
63+
constrow=page.getByTestId("role-idp-role-1");
64+
awaitexpect(row.getByRole("cell",{name:"idp-role-1"})).toBeVisible();
65+
awaitrow
5266
.getByRole("button",{name:/delete/i})
53-
.first()
5467
.click();
55-
awaitexpect(page.getByText("idp-role-1")).not.toBeVisible();
68+
awaitexpect(row.getByRole("cell",{name:"idp-role-1"})).not.toBeVisible();
5669
awaitexpect(
5770
page.getByText("IdP Role sync settings updated."),
5871
).toBeVisible();
@@ -70,7 +83,7 @@ test.describe("IdpRoleSyncPage", () => {
7083
constsyncField=page.getByRole("textbox",{
7184
name:"Role sync field",
7285
});
73-
constsaveButton=page.getByRole("button",{name:/save/i}).first();
86+
constsaveButton=page.getByRole("button",{name:/save/i});
7487

7588
awaitexpect(saveButton).toBeDisabled();
7689

@@ -133,8 +146,8 @@ test.describe("IdpRoleSyncPage", () => {
133146
// Verify new mapping appears in table
134147
constnewRow=page.getByTestId("role-new-idp-role");
135148
awaitexpect(newRow).toBeVisible();
136-
awaitexpect(newRow.getByText("new-idp-role")).toBeVisible();
137-
awaitexpect(newRow.getByText("organization-admin")).toBeVisible();
149+
awaitexpect(newRow.getByRole("cell",{name:"new-idp-role"})).toBeVisible();
150+
awaitexpect(newRow.getByRole("cell",{name:"organization-admin"})).toBeVisible();
138151

139152
awaitexpect(
140153
page.getByText("IdP Role sync settings updated."),

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp