fix(cine): prevent crash on second view/hydration of SR series (#5724)

* test: add Playwright test for SR series reload after hydration

* docs: remove Playwright VSCode extension video
This commit is contained in:
Ghadeer Albattarni authored and GitHub committed 2026-02-09 21:20:11 -05:00
1 parent 7bcb6b8a94
commit f70c9b932d
6 files changed
+47 -7

No files matched your search

+36
View File
@@ -0,0 +1,36 @@
import { checkForScreenshot, screenShotPaths, test, visitStudy } from './utils';
test.beforeEach(async ({ page }) => {
const studyInstanceUID = '1.3.6.1.4.1.14519.5.2.1.7310.5101.860473186348887719777907797922';
const mode = 'viewer';
await visitStudy(page, studyInstanceUID, mode, 2000);
});
test('should properly reload SR series after hydration', async ({
page,
DOMOverlayPageObject,
leftPanelPageObject,
rightPanelPageObject,
}) => {
await rightPanelPageObject.toggle();
await rightPanelPageObject.measurementsPanel.select();
await leftPanelPageObject.loadSeriesByModality('SR');
await page.waitForTimeout(2000);
await DOMOverlayPageObject.viewport.segmentationHydration.yes.click();
await page.waitForTimeout(2000);
await checkForScreenshot(page, page, screenShotPaths.srHydrationThenReload.srAfterHydration);
const measurementCount = await rightPanelPageObject.measurementsPanel.panel.getMeasurementCount();
if (measurementCount > 1) {
await rightPanelPageObject.measurementsPanel.panel.nthMeasurement(1).click();
await page.waitForTimeout(1000);
}
await leftPanelPageObject.loadSeriesByModality('SR');
await page.waitForTimeout(2000);
await checkForScreenshot(page, page, screenShotPaths.srHydrationThenReload.srAfterReload);
});
Binary file not shown.

After

Width:  |  Height:  |  Size: 415 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 419 KiB

+4
View File
@@ -124,6 +124,10 @@ const screenShotPaths = {
srPreHydration: 'srPreHydration.png',
srJumpToMeasurement: 'srJumpToMeasurement.png',
},
srHydrationThenReload: {
srAfterHydration: 'srAfterHydration.png',
srAfterReload: 'srAfterReload.png',
},
segHydration: {
segPostHydration: 'segPostHydration.png',
segPreHydration: 'segPreHydration.png',