40 lines
1.4 KiB
TypeScript
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();
|
|
}
|
|
});
|