ohif-viewer/tests/RTDataOverlayNoHydrationThenMPR.spec.ts

55 lines
1.7 KiB
TypeScript

import {
checkForScreenshot,
screenShotPaths,
test,
visitStudy,
waitForViewportRenderCycle,
waitForViewportsRendered,
} from './utils';
import { assertNumberOfModalityLoadBadges } from './utils/assertions';
test.beforeEach(async ({ page }) => {
const studyInstanceUID = '1.3.6.1.4.1.5962.99.1.2968617883.1314880426.1493322302363.3.0';
const mode = 'viewer';
await visitStudy(page, studyInstanceUID, mode, 2000);
});
test('should launch MPR with unhydrated RTSTRUCT chosen from the data overlay menu', async ({
page,
mainToolbarPageObject,
rightPanelPageObject,
viewportPageObject,
}) => {
await rightPanelPageObject.toggle();
const dataOverlayPageObject = (await viewportPageObject.getById('default')).overlayMenu
.dataOverlay;
await dataOverlayPageObject.toggle();
await dataOverlayPageObject.addSegmentation('ARIA RadOnc Structure Sets');
// Adding an overlay should not show the LOAD button.
await assertNumberOfModalityLoadBadges({ page, expectedCount: 0 });
// Hide the overlay menu.
await dataOverlayPageObject.toggle();
await waitForViewportsRendered(page);
await checkForScreenshot(
page,
viewportPageObject.grid,
screenShotPaths.rtDataOverlayNoHydrationThenMPR.rtDataOverlayNoHydrationPreMPR
);
await mainToolbarPageObject.layoutSelection.MPR.click();
// Waiting for the render via waitForViewportRenderCycle appears to wait 'forever', so instead
// we use the baked in wait for screenshot comparisons.
await checkForScreenshot(
page,
viewportPageObject.grid,
screenShotPaths.rtDataOverlayNoHydrationThenMPR.rtDataOverlayNoHydrationPostMPR
);
// Adding an overlay should not show the LOAD button.
await assertNumberOfModalityLoadBadges({ page, expectedCount: 0 });
});