forked from OHIF/Viewers
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCircle.spec.ts
More file actions
66 lines (62 loc) · 1.93 KB
/
Copy pathCircle.spec.ts
File metadata and controls
66 lines (62 loc) · 1.93 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
import {
checkForScreenshot,
expect,
expectAnnotationStatsText,
measurementTextFormatters,
screenShotPaths,
test,
visitStudy,
} from './utils';
test.beforeEach(async ({ page }) => {
const studyInstanceUID = '1.3.6.1.4.1.25403.345050719074.3824.20170125095438.5';
const mode = 'viewer';
await visitStudy(page, studyInstanceUID, mode, 2000);
});
test('should display the circle tool', async ({
page,
DOMOverlayPageObject,
mainToolbarPageObject,
rightPanelPageObject,
viewportPageObject,
}) => {
await mainToolbarPageObject.measurementTools.circleROI.click();
const activeViewport = await viewportPageObject.active;
await activeViewport.clickAt([
{ x: 480, y: 205 },
{ x: 488, y: 247 },
]);
await DOMOverlayPageObject.viewport.measurementTracking.confirm.click();
await checkForScreenshot(
page,
viewportPageObject.grid,
screenShotPaths.circle.circleDisplayedCorrectly
);
await rightPanelPageObject.measurementsPanel.select();
// CircleROI panel: area (no prefix) + Max (with prefix).
// CircleROI SVG: Radius, Area, Mean, Max, Min, Std Dev (6 lines for CT modality).
await expectAnnotationStatsText({
page,
activeViewport,
rightPanelPageObject,
toolName: 'CircleROI',
formatPanelPrimaryLines: [
measurementTextFormatters.areaPanelLine,
measurementTextFormatters.maxLine,
],
formatSvgLines: [
measurementTextFormatters.circleRadiusSvgLine,
measurementTextFormatters.areaSvgLine,
measurementTextFormatters.meanSvgLine,
measurementTextFormatters.maxLine,
measurementTextFormatters.minSvgLine,
measurementTextFormatters.stdDevSvgLine,
],
assertStats: stats => {
expect(stats.areaUnit).toBe('mm²');
expect(stats.area as number).toBeGreaterThan(0);
expect(stats.radiusUnit).toBe('mm');
expect(stats.radius as number).toBeGreaterThan(0);
expect(stats.modalityUnit).toBe('HU');
},
});
});