fix(test): permissions test (#22719)

* fix test

* refcator test

* refactor test

---------

Co-authored-by: Aniket Katkar <aniketkatkar97@gmail.com>
This commit is contained in:
Shrushti Polekar 2025-08-07 11:41:59 +05:30 committed by GitHub
parent e40210f137
commit bdb22fd36c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 69 additions and 24 deletions

View File

@ -38,15 +38,21 @@ const test = base.extend<{
}>({
page: async ({ browser }, use) => {
const adminPage = await browser.newPage();
await adminUser.login(adminPage);
await use(adminPage);
await adminPage.close();
try {
await adminUser.login(adminPage);
await use(adminPage);
} finally {
await adminPage.close();
}
},
testUserPage: async ({ browser }, use) => {
const page = await browser.newPage();
await testUser.login(page);
await use(page);
await page.close();
try {
await testUser.login(page);
await use(page);
} finally {
await page.close();
}
},
});
@ -223,6 +229,5 @@ test.afterAll('Cleanup', async ({ browser }) => {
const { apiContext, afterAction } = await performAdminLogin(browser);
await adminUser.delete(apiContext);
await testUser.delete(apiContext);
await afterAction();
});

View File

@ -39,13 +39,21 @@ const test = base.extend<{
}>({
page: async ({ browser }, use) => {
const adminPage = await browser.newPage();
await adminUser.login(adminPage);
await use(adminPage);
try {
await adminUser.login(adminPage);
await use(adminPage);
} finally {
await adminPage.close();
}
},
testUserPage: async ({ browser }, use) => {
const page = await browser.newPage();
await testUser.login(page);
await use(page);
try {
await testUser.login(page);
await use(page);
} finally {
await page.close();
}
},
});
@ -57,6 +65,13 @@ test.beforeAll('Setup pre-requests', async ({ browser }) => {
await afterAction();
});
test.afterAll('Cleanup pre-requests', async ({ browser }) => {
const { apiContext, afterAction } = await performAdminLogin(browser);
await adminUser.delete(apiContext);
await testUser.delete(apiContext);
await afterAction();
});
Object.entries(entityConfig).forEach(([, config]) => {
const entity = new config.class();
const entityType = entity.getType();
@ -80,6 +95,12 @@ Object.entries(entityConfig).forEach(([, config]) => {
await afterAction();
});
test.afterAll('Cleanup entity', async ({ browser }) => {
const { apiContext, afterAction } = await performAdminLogin(browser);
await entity.delete(apiContext);
await afterAction();
});
// Allow permissions tests
test.describe('Allow permissions', () => {
test.beforeAll('Initialize allow permissions', async ({ browser }) => {
@ -87,6 +108,7 @@ Object.entries(entityConfig).forEach(([, config]) => {
await adminUser.login(page);
await initializePermissions(page, 'allow', ALL_OPERATIONS);
await assignRoleToUser(page, testUser);
await page.close();
});
test(`${entityType} allow common operations permissions`, async ({
@ -133,6 +155,7 @@ Object.entries(entityConfig).forEach(([, config]) => {
await adminUser.login(page);
await initializePermissions(page, 'deny', ALL_OPERATIONS);
await assignRoleToUser(page, testUser);
await page.close();
});
test(`${entityType} deny common operations permissions`, async ({

View File

@ -33,15 +33,21 @@ const test = base.extend<{
}>({
page: async ({ browser }, use) => {
const adminPage = await browser.newPage();
await adminUser.login(adminPage);
await use(adminPage);
await adminPage.close();
try {
await adminUser.login(adminPage);
await use(adminPage);
} finally {
await adminPage.close();
}
},
testUserPage: async ({ browser }, use) => {
const page = await browser.newPage();
await testUser.login(page);
await use(page);
await page.close();
try {
await testUser.login(page);
await use(page);
} finally {
await page.close();
}
},
});
@ -198,6 +204,5 @@ test.afterAll('Cleanup', async ({ browser }) => {
const { apiContext, afterAction } = await performAdminLogin(browser);
await adminUser.delete(apiContext);
await testUser.delete(apiContext);
await afterAction();
});

View File

@ -55,15 +55,21 @@ const test = base.extend<{
}>({
page: async ({ browser }, use) => {
const adminPage = await browser.newPage();
await adminUser.login(adminPage);
await use(adminPage);
await adminPage.close();
try {
await adminUser.login(adminPage);
await use(adminPage);
} finally {
await adminPage.close();
}
},
testUserPage: async ({ browser }, use) => {
const page = await browser.newPage();
await testUser.login(page);
await use(page);
await page.close();
try {
await testUser.login(page);
await use(page);
} finally {
await page.close();
}
},
});
@ -87,6 +93,12 @@ serviceEntities.forEach((EntityClass) => {
await afterAction();
});
test.afterAll('Cleanup entity', async ({ browser }) => {
const { apiContext, afterAction } = await performAdminLogin(browser);
await entity.delete(apiContext);
await afterAction();
});
test.describe('Allow permissions', () => {
test.beforeAll('Initialize allow permissions', async ({ browser }) => {
const page = await browser.newPage();