fix(tests): update openFolderRequest function for tests (#8506)

* fix(tests): update openFolderRequest function for tests

* fix: update imports for openFolderRequest

---------

Co-authored-by: shubh-bruno <shubh-bruno@shubh-bruno.local>
This commit is contained in:
shubh-bruno
2026-07-07 19:52:12 +05:30
committed by GitHub
parent 2cc382538d
commit 707489ef77
3 changed files with 20 additions and 29 deletions

View File

@@ -118,8 +118,8 @@ test.describe('Akamai EdgeGrid Authentication — collection, folder & inherit',
test('Folder level: renders, persists, and an inheriting request signs', async ({ page, createTmpDir }) => {
test.setTimeout(120_000);
const values = valuesFor('folder-nonce');
await createCollection(page, 'edgegrid-folder', await createTmpDir());
await createFolder(page, 'folder-1', 'edgegrid-folder', true);
await createCollection(page, 'edgegrid-collection', await createTmpDir());
await createFolder(page, 'folder-1', 'edgegrid-collection', true);
await page.locator('.collection-item-name').filter({ hasText: 'folder-1' }).dblclick();
await page.locator('.tab.auth').click();
@@ -143,7 +143,7 @@ test.describe('Akamai EdgeGrid Authentication — collection, folder & inherit',
await test.step('A request inside the folder set to Inherit signs with the folder EdgeGrid auth', async () => {
await createRequest(page, 'folder-inherit-request', 'folder-1', { url: SIMULATOR_URL, inFolder: true });
await openFolderRequest(page, 'folder-1', 'folder-inherit-request');
await openFolderRequest(page, 'edgegrid-collection', 'folder-1', 'folder-inherit-request');
await selectRequestPaneTab(page, 'Auth');
await selectAuthMode(page, 'Inherit');

View File

@@ -1,27 +1,8 @@
import { test, expect, Page } from '../../playwright';
import { buildScriptErrorLocators, buildCommonLocators } from '../utils/page/locators';
import { openRequest, closeAllTabs, sendAndWaitForErrorCard, sendAndWaitForResponse } from '../utils/page/actions';
import { openRequest, closeAllTabs, sendAndWaitForErrorCard, sendAndWaitForResponse, openFolderRequest } from '../utils/page/actions';
import { setSandboxMode, runCollection } from '../utils/page/runner';
/**
* Helper: expand a folder in the sidebar and open a nested request.
* Clicking the collection row is idempotent (only expands, never collapses).
* Clicking the folder row is idempotent (only expands, never collapses).
*/
const openFolderRequest = async (page: Page, collectionName: string, folderName: string, requestName: string) => {
await test.step(`Open folder request "${requestName}" in "${folderName}"`, async () => {
const { sidebar, tabs } = buildCommonLocators(page);
await sidebar.collectionRow(collectionName).click();
const folder = sidebar.folder(folderName);
await folder.waitFor({ state: 'visible' });
await folder.click();
const request = sidebar.request(requestName);
await request.waitFor({ state: 'visible' });
await request.click();
await expect(tabs.activeRequestTab()).toContainText(requestName);
});
};
for (const mode of ['safe', 'developer'] as const) {
test.describe.serial(`Script Error Display [${mode} mode]`, () => {
let scriptErrorLocators: ReturnType<typeof buildScriptErrorLocators>;

View File

@@ -1088,16 +1088,26 @@ const focusCollectionSettingsTab = async (page: Page, { timeout = 10000 } = {})
/**
* Open a request within a folder
* Expand a folder in the sidebar and open a nested request.
* Clicks collection → folder → request explicitly to ensure the tree is expanded.
* @param page - The page object
* @param collectionName - The name of the collection
* @param folderName - The name of the folder
* @param requestName - The name of the request
* @returns void
*/
const openFolderRequest = async (page: Page, folderName: string, requestName: string) => {
await test.step(`Open request "${requestName}" in folder "${folderName}"`, async () => {
const locators = buildCommonLocators(page);
await locators.sidebar.folderRequest(folderName, requestName).click();
await expect(locators.tabs.activeRequestTab()).toContainText(requestName);
const openFolderRequest = async (page: Page, collectionName: string, folderName: string, requestName: string) => {
await test.step(`Open folder request "${requestName}" in "${folderName}"`, async () => {
const { sidebar, tabs } = buildCommonLocators(page);
const collectionRow = sidebar.collectionRow(collectionName);
await collectionRow.click();
const collectionWrapper = collectionRow.locator('..');
const folder = collectionWrapper.locator('.collection-item-name').filter({ has: page.getByText(folderName, { exact: true }) });
await folder.waitFor({ state: 'visible' });
await folder.click();
const request = collectionWrapper.locator('.collection-item-name').filter({ has: page.getByText(requestName, { exact: true }) });
await request.waitFor({ state: 'visible' });
await request.click();
await expect(tabs.activeRequestTab()).toContainText(requestName);
});
};