From 9f3c044f2b0519d11b12c20c4cf511e7d37666c9 Mon Sep 17 00:00:00 2001 From: Ravi Chandra Sekhar Sarika Date: Mon, 15 Sep 2025 10:29:18 +0530 Subject: [PATCH 1/5] fix: agent1 changed to extension to test combination --- playwright/test-manager.ts | 3 +- .../tests/advanced-task-controls-test.spec.ts | 46 +++++++++++-------- 2 files changed, 30 insertions(+), 19 deletions(-) diff --git a/playwright/test-manager.ts b/playwright/test-manager.ts index 17ff65b07..2ead13599 100644 --- a/playwright/test-manager.ts +++ b/playwright/test-manager.ts @@ -355,8 +355,9 @@ export class TestManager { await this.setup(browser, { needsAgent1: true, needsAgent2: true, + needsExtension: true, needsCaller: true, - agent1LoginMode: LOGIN_MODE.DESKTOP, + agent1LoginMode: LOGIN_MODE.EXTENSION, enableConsoleLogging: true, enableAdvancedLogging: true, }); diff --git a/playwright/tests/advanced-task-controls-test.spec.ts b/playwright/tests/advanced-task-controls-test.spec.ts index 7015d625b..2eb220b34 100644 --- a/playwright/tests/advanced-task-controls-test.spec.ts +++ b/playwright/tests/advanced-task-controls-test.spec.ts @@ -13,7 +13,7 @@ import { } from '../Utils/advancedTaskControlUtils'; import {changeUserState, verifyCurrentState} from '../Utils/userStateUtils'; -import {createCallTask, acceptIncomingTask, declineIncomingTask} from '../Utils/incomingTaskUtils'; +import {createCallTask, acceptIncomingTask, declineIncomingTask, acceptExtensionCall} from '../Utils/incomingTaskUtils'; import {submitWrapup} from '../Utils/wrapupUtils'; import {USER_STATES, TASK_TYPES, WRAPUP_REASONS} from '../constants'; import {holdCallToggle, endTask, verifyHoldButtonIcon, verifyTaskControls} from '../Utils/taskControlUtils'; @@ -59,7 +59,7 @@ export default function createAdvancedTaskControlsTests() { const incomingTaskDiv = testManager.agent1Page.getByTestId('samples:incoming-task-telephony').first(); await incomingTaskDiv.waitFor({state: 'visible', timeout: 80000}); - await acceptIncomingTask(testManager.agent1Page, TASK_TYPES.CALL); + await acceptExtensionCall(testManager.agent1ExtensionPage); await changeUserState(testManager.agent2Page, USER_STATES.AVAILABLE); await testManager.agent1Page.waitForTimeout(5000); @@ -69,7 +69,7 @@ export default function createAdvancedTaskControlsTests() { clearAdvancedCapturedLogs(); }); - test('Normal Call Blind Transferred by Agent to Another Agent', async () => { + test('Call Blind Transferred by Agent to Another Agent', async () => { // Agent 1 performs blind transfer to Agent 2 await transferViaAgent(testManager.agent1Page, process.env[`${testManager.projectName}_AGENT2_NAME`]!); @@ -101,7 +101,7 @@ export default function createAdvancedTaskControlsTests() { await testManager.agent2Page.waitForTimeout(2000); }); - test('Normal Call Blind Transferred to Queue', async () => { + test('Call Blind Transferred to Queue', async () => { // First transfer from Agent 1 to Agent 2 await transferViaQueue(testManager.agent1Page, process.env[`${testManager.projectName}_QUEUE_NAME`]!); @@ -137,8 +137,10 @@ export default function createAdvancedTaskControlsTests() { const incomingTaskDiv = testManager.agent1Page.getByTestId('samples:incoming-task-telephony').first(); await incomingTaskDiv.waitFor({state: 'visible', timeout: 80000}); - - await acceptIncomingTask(testManager.agent1Page, TASK_TYPES.CALL); + await testManager.agent1ExtensionPage + .locator('[data-test="generic-person-item-base"]') + .waitFor({state: 'visible', timeout: 20000}); + await acceptExtensionCall(testManager.agent1ExtensionPage); await changeUserState(testManager.agent2Page, USER_STATES.AVAILABLE); await testManager.agent1Page.waitForTimeout(5000); @@ -148,7 +150,7 @@ export default function createAdvancedTaskControlsTests() { clearAdvancedCapturedLogs(); }); - test('Normal Call Consulted via Agent and Accepted (A1 → A2)', async () => { + test('Call Consulted via Agent and Accepted (A1 → A2)', async () => { // Agent 1 initiates consult with Agent 2 await consultViaAgent(testManager.agent1Page, process.env[`${testManager.projectName}_AGENT2_NAME`]!); @@ -190,7 +192,7 @@ export default function createAdvancedTaskControlsTests() { await verifyCurrentState(testManager.agent1Page, USER_STATES.AVAILABLE); }); - test('Normal Call Consulted via Agent and Declined (A1 → A2)', async () => { + test('Call Consulted via Agent and Declined (A1 → A2)', async () => { // Agent 1 initiates another consult with Agent 2 await consultViaAgent(testManager.agent1Page, process.env[`${testManager.projectName}_AGENT2_NAME`]!); @@ -221,7 +223,7 @@ export default function createAdvancedTaskControlsTests() { await testManager.agent1Page.waitForTimeout(2000); }); - test('Normal Call Consulted via Agent and Not Picked Up by Agent 2', async () => { + test('Call Consulted via Agent and Not Picked Up by Agent 2', async () => { // Agent 1 initiates consult with Agent 2 await consultViaAgent(testManager.agent1Page, process.env[`${testManager.projectName}_AGENT2_NAME`]!); @@ -245,7 +247,7 @@ export default function createAdvancedTaskControlsTests() { await testManager.agent1Page.waitForTimeout(2000); }); - test('Consult Transfer - Normal Call to Agent 2', async () => { + test('Consult Transfer - Call to Agent 2', async () => { await consultViaAgent(testManager.agent1Page, process.env[`${testManager.projectName}_AGENT2_NAME`]!); // Agent 2 accepts the consult first @@ -292,8 +294,10 @@ export default function createAdvancedTaskControlsTests() { const incomingTaskDiv = testManager.agent1Page.getByTestId('samples:incoming-task-telephony').first(); await incomingTaskDiv.waitFor({state: 'visible', timeout: 80000}); - - await acceptIncomingTask(testManager.agent1Page, TASK_TYPES.CALL); + await testManager.agent1ExtensionPage + .locator('[data-test="generic-person-item-base"]') + .waitFor({state: 'visible', timeout: 20000}); + await acceptExtensionCall(testManager.agent1ExtensionPage); await testManager.agent1Page.waitForTimeout(5000); await verifyCurrentState(testManager.agent1Page, USER_STATES.ENGAGED); @@ -329,8 +333,10 @@ export default function createAdvancedTaskControlsTests() { const incomingTaskDiv = testManager.agent1Page.getByTestId('samples:incoming-task-telephony').first(); await incomingTaskDiv.waitFor({state: 'visible', timeout: 80000}); - - await acceptIncomingTask(testManager.agent1Page, TASK_TYPES.CALL); + await testManager.agent1ExtensionPage + .locator('[data-test="generic-person-item-base"]') + .waitFor({state: 'visible', timeout: 20000}); + await acceptExtensionCall(testManager.agent1ExtensionPage); await changeUserState(testManager.agent2Page, USER_STATES.AVAILABLE); await testManager.agent1Page.waitForTimeout(5000); @@ -383,8 +389,10 @@ export default function createAdvancedTaskControlsTests() { const incomingTaskDiv = testManager.agent1Page.getByTestId('samples:incoming-task-telephony').first(); await incomingTaskDiv.waitFor({state: 'visible', timeout: 80000}); - - await acceptIncomingTask(testManager.agent1Page, TASK_TYPES.CALL); + await testManager.agent1ExtensionPage + .locator('[data-test="generic-person-item-base"]') + .waitFor({state: 'visible', timeout: 20000}); + await acceptExtensionCall(testManager.agent1ExtensionPage); await changeUserState(testManager.agent2Page, USER_STATES.AVAILABLE); await testManager.agent1Page.waitForTimeout(5000); @@ -428,8 +436,10 @@ export default function createAdvancedTaskControlsTests() { await testManager.agent1Page.waitForTimeout(2000); const incomingTaskDiv = testManager.agent1Page.getByTestId('samples:incoming-task-telephony').first(); await incomingTaskDiv.waitFor({state: 'visible', timeout: 80000}); - - await acceptIncomingTask(testManager.agent1Page, TASK_TYPES.CALL); + await testManager.agent1ExtensionPage + .locator('[data-test="generic-person-item-base"]') + .waitFor({state: 'visible', timeout: 20000}); + await acceptExtensionCall(testManager.agent1ExtensionPage); await changeUserState(testManager.agent2Page, USER_STATES.AVAILABLE); await testManager.agent1Page.waitForTimeout(5000); From 3f202b912ea10985dd04381e800b20a54550188e Mon Sep 17 00:00:00 2001 From: Ravi Chandra Sekhar Sarika Date: Wed, 17 Sep 2025 18:29:29 +0530 Subject: [PATCH 2/5] fix: added dialnumber tests --- .../consult-transfer-dial-number.tsx | 4 +- ...ransfer-dial-number.snapshot.test.tsx.snap | 2 +- .../consult-transfer-dial-number.tsx | 6 +- playwright/Utils/advancedTaskControlUtils.ts | 89 ++++- playwright/constants.ts | 1 + playwright/test-manager.ts | 34 ++ .../tests/advanced-task-controls-test.spec.ts | 347 +++++++----------- 7 files changed, 250 insertions(+), 233 deletions(-) diff --git a/packages/contact-center/cc-components/src/components/task/CallControl/CallControlCustom/consult-transfer-dial-number.tsx b/packages/contact-center/cc-components/src/components/task/CallControl/CallControlCustom/consult-transfer-dial-number.tsx index 750d4a31c..94e1483e4 100644 --- a/packages/contact-center/cc-components/src/components/task/CallControl/CallControlCustom/consult-transfer-dial-number.tsx +++ b/packages/contact-center/cc-components/src/components/task/CallControl/CallControlCustom/consult-transfer-dial-number.tsx @@ -12,8 +12,8 @@ const DialNumberUI: React.FC = (props) return (
onInputDialNumber(e, setValue)} placeholder="Enter Dial Number" diff --git a/packages/contact-center/cc-components/tests/components/task/CallControl/CallControlCustom/__snapshots__/consult-transfer-dial-number.snapshot.test.tsx.snap b/packages/contact-center/cc-components/tests/components/task/CallControl/CallControlCustom/__snapshots__/consult-transfer-dial-number.snapshot.test.tsx.snap index a4967aee7..4953147a4 100644 --- a/packages/contact-center/cc-components/tests/components/task/CallControl/CallControlCustom/__snapshots__/consult-transfer-dial-number.snapshot.test.tsx.snap +++ b/packages/contact-center/cc-components/tests/components/task/CallControl/CallControlCustom/__snapshots__/consult-transfer-dial-number.snapshot.test.tsx.snap @@ -7,7 +7,7 @@ exports[`DialNumberUI snapshot matches snapshot 1`] = ` >