@hmcts/media-viewer 4.2.32 → 4.2.33-4951

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Binary file
package/README.md CHANGED
@@ -116,10 +116,10 @@ For browser-level proof that the standalone viewer is using AAT-backed services,
116
116
  yarn test:local:aat
117
117
  ```
118
118
 
119
- This opens `http://localhost:3000/#/media-viewer`, loads
120
- `/documents/<MV_SMOKE_PDF_DOCUMENT_ID>/binary`, and waits for the rendered PDF viewer
121
- and first page. If `MV_SMOKE_PDF_DOCUMENT_ID` is blank, the smoke uses the demo app's
122
- default AAT PDF document id.
119
+ This executes the functional Playwright lane against the local standalone Media Viewer.
120
+ It creates the same AAT-backed CCD cases and DM Store documents as the migrated legacy
121
+ scenarios, while keeping the browser at `http://localhost:3000/`. The lightweight
122
+ route and health check remains available as `yarn smoke:local:aat`.
123
123
 
124
124
  ### 5. Run Playwright tests
125
125
  Media Viewer is starting its Playwright migration with the same runner and
@@ -132,17 +132,17 @@ Current Playwright lanes:
132
132
  | Lane | Config/project | Command | Scope |
133
133
  | --- | --- | --- | --- |
134
134
  | Standalone smoke | `playwright.config.ts`, project `smoke` | `yarn test:playwright:smoke` or `yarn test:smoke` | One readiness contract: loads a standalone PDF and proves the rendered viewer, first page and canvas are usable. |
135
- | Migrated functional | `playwright.config.ts`, project `functional` | `yarn test:playwright:functional` | 56 behaviour tests across 12 explicit feature files; one bookmarks reorder test is intentionally skipped pending [EXUI-5097](https://tools.hmcts.net/jira/browse/EXUI-5097). See [`playwright_tests/functional/README.md`](playwright_tests/functional/README.md). |
135
+ | Migrated functional | `playwright.config.ts`, project `functional` | `yarn test:playwright:functional` | 71 fixture-backed browser contracts across 13 feature files. Two additional image-annotation create contracts are discoverable, ticketed against [EXUI-5124](https://tools.hmcts.net/jira/browse/EXUI-5124), and excluded from the default selection because the current product does not persist an image draw-box annotation. See [`playwright_tests/functional/README.md`](playwright_tests/functional/README.md). |
136
+ | Live integration | `playwright.config.ts`, project `integration` | `yarn test:playwright:integration` | Five bounded AAT service contracts, including CCD/DM Store document setup and live annotation create/retrieve/update/delete. Four CCD browser-route contracts are discoverable and ticketed against [EXUI-5122](https://tools.hmcts.net/jira/browse/EXUI-5122) and [EXUI-5123](https://tools.hmcts.net/jira/browse/EXUI-5123). |
136
137
  | Viewer support | `playwright.config.ts`, project `support` | `yarn test:playwright:support` | Proves the reusable PDF, image and unsupported-media fixtures, component objects and response diagnostics. |
137
138
 
138
139
  The current migration slice is deliberately separated from smoke: smoke proves
139
140
  the application is ready, functional proves user-facing viewer behaviour, and
140
- support proves the reusable automation contracts. There is no API or mocked
141
- integration project in this slice because the migrated contracts are browser
142
- rendering and interaction behaviour owned by the standalone viewer. Every
143
- Playwright Odhín report also includes a capability inventory showing covered,
144
- partially covered and legacy-only Media Viewer areas, with the remaining
145
- assurance gap for each capability.
141
+ support proves the reusable automation contracts, and Integration proves the
142
+ live AAT service boundaries without making the standalone browser suite depend
143
+ on shared CCD state. Every Playwright Odhín report includes a capability
144
+ inventory that states whether each contract is selected by default or is a
145
+ discoverable, ticketed product-defect contract.
146
146
 
147
147
  The Playwright config runs tests fully in parallel with seven workers by
148
148
  default. Set `FUNCTIONAL_TESTS_WORKERS` to a positive integer (up to 64) for an
@@ -261,8 +261,10 @@ Migration boundaries:
261
261
  - Put new native Playwright specs under `playwright_tests/`.
262
262
  - Keep screen interactions and reusable locators in page objects under
263
263
  `playwright_tests/pages/`; keep assertions visible in specs.
264
- - Keep legacy Protractor and CodeceptJS coverage until replacement coverage and
265
- Jenkins evidence are agreed.
264
+ - Historical CodeceptJS scenarios are retained as source traceability only;
265
+ their executable pipeline routing is retired once the mapped Playwright
266
+ contract is selected by default or is represented by a discoverable,
267
+ ticketed product-defect contract.
266
268
  - Add stable report output paths for every new Playwright lane so Jenkins can
267
269
  publish Odhín and JUnit and archive failure diagnostics without bespoke stage
268
270
  logic.
@@ -270,67 +272,31 @@ Migration boundaries:
270
272
  an error page, blank page, wrong route or service-down page as a valid ready
271
273
  signal.
272
274
 
273
- ### 6. Create isolated AAT test documents
274
- For mutation-heavy functional tests, do not share one document across parallel tests.
275
- Create fresh AAT DM Store documents through the local API proxy while `yarn start:aat`
276
- is running:
275
+ ### 6. Run local Playwright lanes
276
+ `yarn test:local:aat` is the standalone smoke lane; it does not create a CCD
277
+ case or DM Store document. Run the fixture-backed Functional lane locally with:
277
278
 
278
279
  ```
279
- yarn local-aat:documents -- --pdf-count 7 --image-count 1 --output .local-aat-documents.env
280
+ yarn test:playwright:functional
280
281
  ```
281
282
 
282
- This writes:
283
- - `MV_SMOKE_PDF_DOCUMENT_ID`
284
- - `MV_SMOKE_IMAGE_DOCUMENT_ID`
285
- - `MV_FUNCTIONAL_PDF_DOCUMENT_IDS`
286
- - `MV_FUNCTIONAL_IMAGE_DOCUMENT_IDS`
287
-
288
- The upload path mirrors em-showcase: multipart `files`, `classification=PUBLIC`,
289
- and civil/probate metadata are posted to `/documents`.
290
-
291
- ### 7. Run isolated local functional tests
292
- With `yarn start:aat` still running, execute the functional groups with separate
293
- documents and separate reports:
294
-
295
- ```
296
- yarn test:functional:local:isolated
297
- ```
298
-
299
- By default this creates fresh documents, runs up to three feature files at a time,
300
- and writes reports under `functional-output/local-isolated/`. Override with:
301
- - `MV_LOCAL_PARALLEL_MAX_JOBS=1` to run the same isolated groups serially
302
- - `MV_CREATE_LOCAL_AAT_DOCS=false` to reuse IDs from `.local-aat-documents.env`
303
- - `E2E_PARALLEL_OUTPUT_ROOT=<path>` to change report location
304
-
305
- Each feature writes its own report directory, including:
306
- - `mv-e2e-result.html`
307
- - `mv-e2e-result.json`
308
- - `result.xml`
309
-
310
- The validated local AAT sequence is:
283
+ For live service-boundary proof, load the approved local AAT settings, start
284
+ the AAT proxy, then run the serial Integration lane:
311
285
 
312
286
  ```
313
287
  yarn check:aat-config
314
288
  yarn start:aat
315
- yarn smoke:local:aat
316
- yarn test:local:aat
317
- yarn test:functional:local:isolated
289
+ PLAYWRIGHT_SKIP_INSTALL=true yarn test:playwright:integration
318
290
  ```
319
291
 
320
- Expected `test:functional:local:isolated` feature groups:
321
- - `redact`
322
- - `imageViewerAnnotationsAndComments`
323
-
324
- For the strongest isolation proof, make each scenario upload and use its own document:
292
+ Integration creates a unique CCD case and documents for its own lifecycle; it
293
+ does not share them with Functional tests. Known product-defect contracts are
294
+ not skipped: they remain discoverable and run only when explicitly selected:
325
295
 
326
296
  ```
327
- yarn test:functional:local:self-contained
297
+ PLAYWRIGHT_INCLUDE_KNOWN_DEFECTS=true yarn playwright test --grep @defect-EXUI-5124
328
298
  ```
329
299
 
330
- This is slower because it creates a fresh AAT DM Store document for each scenario, but
331
- it is the best local check when diagnosing interference between bookmarks,
332
- annotations, comments, and redactions.
333
-
334
300
  ### Useful overrides
335
301
  Most developers should use the defaults from `.env.example`. Override only when you are deliberately testing a different endpoint or registered client setting.
336
302
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hmcts/media-viewer",
3
- "version": "4.2.32",
3
+ "version": "4.2.33-4951",
4
4
  "description": "Media Viewer",
5
5
  "keywords": [
6
6
  "Angular",
@@ -23,7 +23,7 @@
23
23
  "pdfjs-dist": "^4.10.38",
24
24
  "socket.io-client": "^4.8.0",
25
25
  "tslib": "^2.3.0",
26
- "uuid": "^11.0.3"
26
+ "uuid": "^11.1.1"
27
27
  },
28
28
  "peerDependencies": {
29
29
  "@angular/animations": "^20.0.0",
@@ -40,6 +40,9 @@
40
40
  "rpx-xui-translation": "1.2.12",
41
41
  "rxjs": "^7.8.2"
42
42
  },
43
+ "resolutions": {
44
+ "socket.io-parser": "4.2.7"
45
+ },
43
46
  "packageManager": "yarn@4.5.0",
44
47
  "module": "fesm2022/hmcts-media-viewer.mjs",
45
48
  "typings": "index.d.ts",
package/package.tgz CHANGED
Binary file