ohif-viewer/tests/SegmentationSeriesNavigation.spec.ts

40 lines
1.4 KiB
TypeScript

import { test, visitStudy, expect } from './utils';
import { press } from './utils/keyboardUtils';
test.beforeEach(async ({ page }) => {
const studyInstanceUID = '1.2.840.113619.2.290.3.3767434740.226.1600859119.501';
const mode = 'segmentation';
await visitStudy(page, studyInstanceUID, mode, 2000);
});
test('should keep the viewport rendered when navigating series with Page Down after adding a segmentation', async ({
page,
leftPanelPageObject,
rightPanelPageObject,
viewportPageObject,
}) => {
// Study has 5 series; pressing 8 times verifies navigation remains stable even after
// reaching the client-created SEG display set appended by "Add Segmentation".
const minimumSeriesExpected = 5;
const totalPageDownPresses = minimumSeriesExpected + 3;
await rightPanelPageObject.labelMapSegmentationPanel.addSegmentationButton.click();
const thumbnailsLocator = leftPanelPageObject.thumbnails;
await expect
.poll(async () => {
return await thumbnailsLocator.count();
})
.toBeGreaterThanOrEqual(minimumSeriesExpected);
const activeViewport = await viewportPageObject.active;
await activeViewport.pane.click();
await activeViewport.pane.dblclick();
for (let i = 0; i < totalPageDownPresses; i++) {
await press({ page, key: 'PageDown' });
const currentActiveViewport = await viewportPageObject.active;
await expect(currentActiveViewport.overlayText.bottomRight.instanceNumber).toBeVisible();
}
});