Skip to content

Commit 8b00115

Browse files
committed
fix: added one more set
1 parent 3caeeb4 commit 8b00115

8 files changed

Lines changed: 300 additions & 177 deletions

playwright/README.md

Lines changed: 27 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ playwright/
1414
│ ├── advanced-task-controls-tests.spec.ts # Advanced task controls orchestration
1515
│ ├── dial-number-tests.spec.ts # Dial number task control orchestration
1616
│ ├── multiparty-conference-set-7-tests.spec.ts # Multiparty conference set 7 orchestration
17-
│ └── multiparty-conference-set-8-tests.spec.ts # Multiparty conference set 8 orchestration
17+
│ ├── multiparty-conference-set-8-tests.spec.ts # Multiparty conference set 8 orchestration
18+
│ └── multiparty-conference-set-9-tests.spec.ts # Multiparty conference set 9 orchestration
1819
├── tests/ # Individual test implementations
1920
├── Utils/ # Utility functions
2021
├── test-data.ts # **CENTRAL CONFIG** - Test data & suite mapping
@@ -42,34 +43,39 @@ playwright/
4243
| **SET_6** | Dial number scenarios | 9226 | `dial-number-tests.spec.ts` |
4344
| **SET_7** | Multiparty conference (team 25-28) | 9227 | `multiparty-conference-set-7-tests.spec.ts` |
4445
| **SET_8** | Multiparty conference (team 29-32) | 9228 | `multiparty-conference-set-8-tests.spec.ts` |
46+
| **SET_9** | Multiparty conference (team 33-36) | 9229 | `multiparty-conference-set-9-tests.spec.ts` |
4547

4648
### Where to Add New Tests?
4749

48-
| Test Type | Use Set | Why |
49-
| ---------------------------- | ------- | --------------------------- |
50-
| Digital channels tasks | SET_1 | Digital channels configured |
51-
| Task list operations | SET_2 | Task list focus |
52-
| Authentication/User states | SET_3 | User management |
53-
| Basic/Advanced task controls | SET_4 | Task control operations |
54-
| Complex advanced scenarios | SET_5 | Advanced operations |
55-
| Dial number scenarios | SET_6 | Dial number flows |
56-
| Multiparty conference | SET_7/8 | 4-agent conference coverage |
50+
| Test Type | Use Set | Why |
51+
| ---------------------------- | --------- | --------------------------- |
52+
| Digital channels tasks | SET_1 | Digital channels configured |
53+
| Task list operations | SET_2 | Task list focus |
54+
| Authentication/User states | SET_3 | User management |
55+
| Basic/Advanced task controls | SET_4 | Task control operations |
56+
| Complex advanced scenarios | SET_5 | Advanced operations |
57+
| Dial number scenarios | SET_6 | Dial number flows |
58+
| Multiparty conference | SET_7/8/9 | 4-agent conference coverage |
5759

5860
## Multiparty Conference Consolidation
5961

6062
To reduce runtime and repeated call initialization, conference scenarios are consolidated into combined tests while preserving scenario IDs in test names.
6163

6264
- `SET_7` (`playwright/tests/multiparty-conference-set-7-test.spec.ts`)
6365
- Combined: `CTS-MPC-01+02`, `CTS-MPC-03+04`, `CTS-MPC-07+09+10`
64-
- Combined: `CTS-TC-01+02+03`, `CTS-TC-04+05`
65-
- Standalone: `CTS-MPC-05`, `CTS-MPC-06`, `CTS-TC-06`, `CTS-TC-07`, `CTS-TC-08`
66-
- Split: `CTS-TC-06` and `CTS-TC-07` run as separate tests (queue routing won't re-route to RONA'd agent in same session)
66+
- Standalone: `CTS-MPC-05`, `CTS-MPC-06`, `CTS-SW-04`
67+
- Combined: `CTS-SW-02+03`
6768
- Skipped: `CTS-MPC-08` (>4 agents)
6869
- `SET_8` (`playwright/tests/multiparty-conference-set-8-test.spec.ts`)
6970
- Combined: `CTS-TC-09+10`, `CTS-TC-11+13`, `CTS-TC-14+15`
70-
- Combined: `CTS-SW-02+03`, `CTS-SW-05+06`
71-
- Standalone: `CTS-TC-16`, `CTS-SW-04`, `CTS-SW-07`
72-
- Skipped: `CTS-TC-12` (feature-flag gated), `CTS-TC-17` (>4 agents), `CTS-TC-18` (EPDN), `CTS-SW-01` (EP_DN), `CTS-SW-08` (>4 agents)
71+
- Standalone: `CTS-TC-16`, `CTS-SW-07`
72+
- Skipped: `CTS-TC-12` (feature-flag gated), `CTS-TC-17` (>4 agents), `CTS-TC-18` (EPDN)
73+
- `SET_9` (`playwright/tests/multiparty-conference-set-9-test.spec.ts`)
74+
- Combined: `CTS-TC-01+02+03`, `CTS-TC-04+05`
75+
- Standalone: `CTS-TC-06`, `CTS-TC-07`, `CTS-TC-08`
76+
- Split: `CTS-TC-06` and `CTS-TC-07` run as separate tests (queue routing won't re-route to RONA'd agent in same session)
77+
- Combined: `CTS-SW-05+06`
78+
- Skipped: `CTS-SW-01` (EP_DN), `CTS-SW-08` (>4 agents)
7379

7480
## 🧪 Adding New Tests
7581

@@ -189,17 +195,18 @@ PW_CHAT_URL=https://your-chat-url
189195
PW_SANDBOX=your-sandbox-name
190196
PW_ENTRY_POINT1=entry-point-1
191197
PW_ENTRY_POINT2=entry-point-2
192-
# ... PW_ENTRY_POINT3, 4, 5
198+
# ... PW_ENTRY_POINT3 ... PW_ENTRY_POINT9
193199
```
194200

195201
Test data is automatically handled by TestManager based on the running test set.
196202

197203
OAuth setup behavior (`playwright/global.setup.ts`):
204+
198205
- expands `USER_SETS` into set-scoped env keys
199206
- builds OAuth set groups dynamically from `USER_SETS` (chunk size `2`)
200207
- runs one parallel OAuth worker per generated group
201208
- each group uses `OAUTH_BATCH_SIZE=4` internally
202-
- with current 8 sets this resolves to 4 groups: `[SET_1,SET_2]`, `[SET_3,SET_4]`, `[SET_5,SET_6]`, `[SET_7,SET_8]`
209+
- with current 9 sets this resolves to 5 groups: `[SET_1,SET_2]`, `[SET_3,SET_4]`, `[SET_5,SET_6]`, `[SET_7,SET_8]`, `[SET_9]`
203210
- optionally collects dial-number token
204211
- writes all token/env updates in one final upsert pass
205212

@@ -218,6 +225,7 @@ yarn test:e2e suites/advanced-task-controls-tests.spec.ts
218225
yarn test:e2e suites/dial-number-tests.spec.ts
219226
yarn test:e2e suites/multiparty-conference-set-7-tests.spec.ts
220227
yarn test:e2e suites/multiparty-conference-set-8-tests.spec.ts
228+
yarn test:e2e suites/multiparty-conference-set-9-tests.spec.ts
221229

222230
# Run specific test sets (projects) - names match USER_SETS keys
223231
yarn test:e2e --project=SET_1 # Digital incoming tasks
@@ -228,6 +236,7 @@ yarn test:e2e --project=SET_5 # Advanced task controls
228236
yarn test:e2e --project=SET_6 # Dial number scenarios
229237
yarn test:e2e --project=SET_7 # Multiparty conference (team 25-28)
230238
yarn test:e2e --project=SET_8 # Multiparty conference (team 29-32)
239+
yarn test:e2e --project=SET_9 # Multiparty conference (team 33-36)
231240

232241
# Development & debugging
233242
yarn playwright test --config=playwright.config.ts --project="OAuth: Get Access Token" # Run OAuth setup only

playwright/ai-docs/AGENTS.md

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ At the time of this doc update, the baseline suites are:
3535
- `dial-number-tests.spec.ts`
3636
- `multiparty-conference-set-7-tests.spec.ts`
3737
- `multiparty-conference-set-8-tests.spec.ts`
38+
- `multiparty-conference-set-9-tests.spec.ts`
3839

3940
Do not assume additional sets/suites exist unless they are present in code.
4041

@@ -101,11 +102,12 @@ yarn test:e2e --project=SET_1
101102
- `playwright/global.setup.ts` runs one `OAuth` setup test.
102103
- Inside that test, token collection groups are generated dynamically from `USER_SETS` using chunk size `2`.
103104
- One parallel OAuth worker runs per generated group.
104-
- With current `SET_1..SET_8`, this resolves to 4 groups:
105+
- With current `SET_1..SET_9`, this resolves to 5 groups:
105106
- `[SET_1, SET_2]`
106107
- `[SET_3, SET_4]`
107108
- `[SET_5, SET_6]`
108109
- `[SET_7, SET_8]`
110+
- `[SET_9]`
109111
- Each group uses batch size 4 internally (`OAUTH_BATCH_SIZE=4`).
110112
- Dial-number token is collected when configured.
111113
- All env/token updates are written once via single `.env` upsert.
@@ -132,11 +134,12 @@ When Playwright behavior changes:
132134

133135
---
134136

135-
## Conference Coverage (SET_7, SET_8)
137+
## Conference Coverage (SET_7, SET_8, SET_9)
136138

137139
- Multiparty conference scenarios are split across:
138140
- `playwright/tests/multiparty-conference-set-7-test.spec.ts`
139141
- `playwright/tests/multiparty-conference-set-8-test.spec.ts`
142+
- `playwright/tests/multiparty-conference-set-9-test.spec.ts`
140143
- Scenario IDs use prefixes:
141144
- `CTS-MPC-*` (Multi-Party Conference matrix)
142145
- `CTS-TC-*` (Transfer Conference scenarios)
@@ -148,9 +151,16 @@ When Playwright behavior changes:
148151
- repeated call-init flows are merged into single tests when scenario steps are sequentially compatible
149152
- consolidated IDs remain explicit in test names for traceability (for example `CTS-TC-09 and CTS-TC-10 ...`)
150153
- current combined groups include:
151-
- `SET_7`: `CTS-MPC-01+02`, `CTS-MPC-03+04`, `CTS-MPC-07+09+10`, `CTS-TC-01+02+03`, `CTS-TC-04+05` (CTS-TC-06 and CTS-TC-07 are split — queue routing won't re-route to RONA'd agent)
152-
- `SET_8`: `CTS-TC-09+10`, `CTS-TC-11+13`, `CTS-TC-14+15`, `CTS-SW-02+03`, `CTS-SW-05+06`
154+
- `SET_7`: `CTS-MPC-01+02`, `CTS-MPC-03+04`, `CTS-MPC-07+09+10`, `CTS-SW-02+03`
155+
- `SET_8`: `CTS-TC-09+10`, `CTS-TC-11+13`, `CTS-TC-14+15`
156+
- `SET_9`: `CTS-TC-01+02+03`, `CTS-TC-04+05`, `CTS-SW-05+06`
157+
- standalone conference-only scenarios are intentionally distributed for runtime parity:
158+
- `SET_7`: `CTS-SW-04`
159+
- `SET_8`: `CTS-SW-07`
160+
- `SET_9`: `CTS-TC-06`, `CTS-TC-07`, `CTS-TC-08`
161+
- scenario split note:
162+
- `CTS-TC-06` and `CTS-TC-07` run as separate tests (queue routing will not reliably re-route to an agent that RONA'd in the same session)
153163

154164
---
155165

156-
_Last Updated: 2026-03-08_
166+
_Last Updated: 2026-03-09_

playwright/ai-docs/ARCHITECTURE.md

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,8 @@ playwright/
4141
│ ├── advanced-task-controls-tests.spec.ts
4242
│ ├── dial-number-tests.spec.ts
4343
│ ├── multiparty-conference-set-7-tests.spec.ts
44-
│ └── multiparty-conference-set-8-tests.spec.ts
44+
│ ├── multiparty-conference-set-8-tests.spec.ts
45+
│ └── multiparty-conference-set-9-tests.spec.ts
4546
├── tests/
4647
│ ├── digital-incoming-task-and-task-controls.spec.ts
4748
│ ├── incoming-task-and-controls-multi-session.spec.ts
@@ -54,7 +55,8 @@ playwright/
5455
│ ├── dial-number-task-control-test.spec.ts
5556
│ ├── tasklist-test.spec.ts
5657
│ ├── multiparty-conference-set-7-test.spec.ts
57-
│ └── multiparty-conference-set-8-test.spec.ts
58+
│ ├── multiparty-conference-set-8-test.spec.ts
59+
│ └── multiparty-conference-set-9-test.spec.ts
5860
├── Utils/
5961
│ ├── initUtils.ts
6062
│ ├── helperUtils.ts
@@ -89,10 +91,11 @@ Keep this section aligned to real repository contents.
8991
| `SET_6` | `dial-number-tests.spec.ts` | `dial-number-task-control-test.spec.ts` |
9092
| `SET_7` | `multiparty-conference-set-7-tests.spec.ts` | `multiparty-conference-set-7-test.spec.ts` |
9193
| `SET_8` | `multiparty-conference-set-8-tests.spec.ts` | `multiparty-conference-set-8-test.spec.ts` |
94+
| `SET_9` | `multiparty-conference-set-9-tests.spec.ts` | `multiparty-conference-set-9-test.spec.ts` |
9295

9396
Use this mapping to decide where new tests should be added and wired.
9497

95-
Conference scenario consolidation is implemented inside the SET_7/SET_8 test files to reduce repeated call setup while preserving scenario ID traceability in test titles.
98+
Conference scenario consolidation is implemented inside the SET_7/SET_8/SET_9 test files to reduce repeated call setup while preserving scenario ID traceability in test titles.
9699

97100
---
98101

@@ -139,11 +142,12 @@ These flags are part of baseline runtime behavior and should be preserved unless
139142
1. Expands `USER_SETS` into set-scoped env keys (`<SET>_...`)
140143
2. Builds OAuth groups dynamically from `USER_SETS` with group size `2` and runs them in parallel.
141144
Each group uses batch size 4 internally (`OAUTH_BATCH_SIZE=4`).
142-
With current `SET_1..SET_8`, this resolves to 4 groups:
145+
With current `SET_1..SET_9`, this resolves to 5 groups:
143146
- `[SET_1, SET_2]`
144147
- `[SET_3, SET_4]`
145148
- `[SET_5, SET_6]`
146149
- `[SET_7, SET_8]`
150+
- `[SET_9]`
147151
3. Optionally fetches dial-number OAuth token
148152
4. Performs one final `.env` upsert in the same OAuth setup run
149153

@@ -259,7 +263,7 @@ When enabled by setup config/method, these page properties are created and avail
259263
| `incomingTaskUtils.ts` | `createCallTask`, `createChatTask`, `createEmailTask`, `waitForIncomingTask`, `acceptIncomingTask`, `declineIncomingTask`, `acceptExtensionCall`, `loginExtension`, `submitRonaPopup` | Incoming task creation/acceptance/decline and extension helpers |
260264
| `wrapupUtils.ts` | `submitWrapup` | Wrapup submission |
261265
| `helperUtils.ts` | `handleStrayTasks`, `pageSetup`, `waitForState`, `waitForStateLogs`, `waitForWebSocketDisconnection`, `waitForWebSocketReconnection`, `clearPendingCallAndWrapup`, `dismissOverlays` | Shared setup/cleanup/state polling/network-watch helpers. `waitForState` polls visible state text (`state-name`) to align with `verifyCurrentState`. `pageSetup` includes one bounded station logout/re-login recovery if `state-select` is still missing after login. `handleStrayTasks` handles exit-conference, dual call control groups (iterates all end-call buttons to find enabled one), cancel-consult with switch-leg fallback. |
262-
| `conferenceUtils.ts` | `cleanupConferenceState`, `startBaselineCallOnAgent1`, `consultAgentAndAcceptCall`, `consultQueueAndAcceptCall`, `mergeConsultIntoConference`, `transferConsultAndSubmitWrapup`, `toggleConferenceLegIfSwitchAvailable`, `exitConferenceParticipantOrEndTask` | Shared conference helpers used by Set 7 and Set 8 to keep call setup/cleanup and consult-transfer flows consistent and reusable. |
266+
| `conferenceUtils.ts` | `cleanupConferenceState`, `startBaselineCallOnAgent1`, `consultAgentAndAcceptCall`, `consultQueueAndAcceptCall`, `mergeConsultIntoConference`, `transferConsultAndSubmitWrapup`, `toggleConferenceLegIfSwitchAvailable`, `exitConferenceParticipantOrEndTask` | Shared conference helpers used by Set 7, Set 8, and Set 9 to keep call setup/cleanup and consult-transfer flows consistent and reusable. |
263267

264268
Use existing helpers first; add new utilities only when behavior is not already covered.
265269

@@ -426,4 +430,4 @@ After a call ends, the Make Call button on the caller page may stay disabled. Cl
426430

427431
---
428432

429-
_Last Updated: 2026-03-08_
433+
_Last Updated: 2026-03-09_
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
import {test} from '@playwright/test';
2+
import createMultipartyConferenceSet9Tests from '../tests/multiparty-conference-set-9-test.spec';
3+
4+
test.describe('Multiparty Conference Tests - Set 9', createMultipartyConferenceSet9Tests);

playwright/test-data.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,4 +95,17 @@ export const USER_SETS = {
9595
ENTRY_POINT: env.PW_ENTRY_POINT8,
9696
TEST_SUITE: 'multiparty-conference-set-8-tests.spec.ts',
9797
},
98+
SET_9: {
99+
AGENTS: {
100+
AGENT1: {username: 'user33', extension: '1033', agentName: 'User33 Agent33'},
101+
AGENT2: {username: 'user34', extension: '1034', agentName: 'User34 Agent34'},
102+
AGENT3: {username: 'user35', extension: '1035', agentName: 'User35 Agent35'},
103+
AGENT4: {username: 'user36', extension: '1036', agentName: 'User36 Agent36'},
104+
},
105+
QUEUE_NAME: 'Queue e2e 9',
106+
CHAT_URL: `${env.PW_CHAT_URL}-e2e-9.html`,
107+
EMAIL_ENTRY_POINT: `${env.PW_SANDBOX}.e2e9@gmail.com`,
108+
ENTRY_POINT: env.PW_ENTRY_POINT9,
109+
TEST_SUITE: 'multiparty-conference-set-9-tests.spec.ts',
110+
},
98111
};

0 commit comments

Comments
 (0)