Skip to content

Commit 3cb3299

Browse files
committed
refactor fixtures
1 parent 2b11324 commit 3cb3299

File tree

8 files changed

+87
-64
lines changed

8 files changed

+87
-64
lines changed

frontend/javascripts/test/fixtures/dataset_server_object.ts

Lines changed: 53 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -59,54 +59,60 @@ export const sampleTracingLayer: APISegmentationLayer = {
5959
tracingId: "tracingId",
6060
};
6161

62-
const apiDataset: APIDataset = {
63-
id: "66f3c82966010034942e9740",
64-
name: "ROI2017_wkw",
65-
dataSource: {
66-
id: {
67-
name: "ROI2017_wkw",
68-
team: "Connectomics department",
62+
function createDataset(dataLayers: Array<APIColorLayer | APISegmentationLayer>): APIDataset {
63+
return {
64+
id: "66f3c82966010034942e9740",
65+
name: "ROI2017_wkw",
66+
dataSource: {
67+
id: {
68+
name: "ROI2017_wkw",
69+
team: "Connectomics department",
70+
},
71+
dataLayers,
72+
scale: { factor: [11.239999771118164, 11.239999771118164, 28], unit: UnitLong.nm },
6973
},
70-
dataLayers: [sampleColorLayer, sampleSegmentationLayer],
71-
scale: { factor: [11.239999771118164, 11.239999771118164, 28], unit: UnitLong.nm },
72-
},
73-
dataStore: {
74-
name: "localhost",
75-
url: "http://localhost:9000",
76-
allowsUpload: true,
77-
jobsSupportedByAvailableWorkers: [],
78-
jobsEnabled: false,
79-
},
80-
owningOrganization: "Connectomics department",
81-
allowedTeams: [
82-
{
83-
id: "5b1e45f9a00000a000abc2c3",
84-
name: "Connectomics department",
85-
organization: "Connectomics department",
86-
},
87-
],
88-
allowedTeamsCumulative: [
89-
{
90-
id: "5b1e45f9a00000a000abc2c3",
91-
name: "Connectomics department",
92-
organization: "Connectomics department",
74+
dataStore: {
75+
name: "localhost",
76+
url: "http://localhost:9000",
77+
allowsUpload: true,
78+
jobsSupportedByAvailableWorkers: [],
79+
jobsEnabled: false,
9380
},
94-
],
95-
isActive: true,
96-
isPublic: false,
97-
description: null,
98-
created: 1502288550432,
99-
isEditable: true,
100-
directoryName: "ROI2017_wkw",
101-
isUnreported: false,
102-
tags: [],
103-
folderId: "66f3c82466010002752e972c",
104-
metadata: [],
105-
logoUrl: "/assets/images/logo.svg",
106-
lastUsedByUser: 1727268949322,
107-
sortingKey: 1727252521746,
108-
publication: null,
109-
usedStorageBytes: 0,
110-
};
81+
owningOrganization: "Connectomics department",
82+
allowedTeams: [
83+
{
84+
id: "5b1e45f9a00000a000abc2c3",
85+
name: "Connectomics department",
86+
organization: "Connectomics department",
87+
},
88+
],
89+
allowedTeamsCumulative: [
90+
{
91+
id: "5b1e45f9a00000a000abc2c3",
92+
name: "Connectomics department",
93+
organization: "Connectomics department",
94+
},
95+
],
96+
isActive: true,
97+
isPublic: false,
98+
description: null,
99+
created: 1502288550432,
100+
isEditable: true,
101+
directoryName: "ROI2017_wkw",
102+
isUnreported: false,
103+
tags: [],
104+
folderId: "66f3c82466010002752e972c",
105+
metadata: [],
106+
logoUrl: "/assets/images/logo.svg",
107+
lastUsedByUser: 1727268949322,
108+
sortingKey: 1727252521746,
109+
publication: null,
110+
usedStorageBytes: 0,
111+
};
112+
}
113+
114+
const apiDataset = createDataset([sampleColorLayer, sampleSegmentationLayer]);
115+
116+
export const apiDatasetForVolumeTracing = createDataset([sampleTracingLayer]);
111117

112118
export default apiDataset;

frontend/javascripts/test/fixtures/volumetracing_object.ts

Lines changed: 26 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,37 @@
11
import update from "immutability-helper";
2-
import { AnnotationTool } from "viewer/model/accessors/tool_accessor";
32
import Constants from "viewer/constants";
43
import defaultState from "viewer/default_state";
4+
import { combinedReducer, type VolumeTracing } from "viewer/store";
5+
import DiffableMap from "libs/diffable_map";
6+
import { setDatasetAction } from "viewer/model/actions/dataset_actions";
7+
import { convertFrontendBoundingBoxToServer } from "viewer/model/reducers/reducer_helpers";
8+
import { apiDatasetForVolumeTracing } from "./dataset_server_object";
59

6-
const volumeTracing = {
10+
const volumeTracing: VolumeTracing = {
711
type: "volume",
12+
segments: new DiffableMap(),
13+
segmentGroups: [],
14+
hasSegmentIndex: true,
15+
contourTracingMode: "DRAW",
16+
hideUnregisteredSegments: false,
817
activeCellId: 0,
9-
activeTool: AnnotationTool.MOVE,
1018
largestSegmentId: 0,
1119
contourList: [],
1220
lastLabelActions: [],
1321
tracingId: "tracingId",
14-
};
22+
createdTimestamp: 1234,
23+
boundingBox: { min: [0, 1, 2], max: [10, 11, 12] },
24+
userBoundingBoxes: [],
25+
additionalAxes: [],
26+
} as const;
1527
const notEmptyViewportRect = {
1628
top: 0,
1729
left: 0,
1830
width: Constants.VIEWPORT_WIDTH,
1931
height: Constants.VIEWPORT_WIDTH,
2032
};
21-
export const initialState = update(defaultState, {
33+
34+
const stateWithoutDatasetInitialization = update(defaultState, {
2235
annotation: {
2336
annotationType: {
2437
$set: "Explorational",
@@ -45,7 +58,6 @@ export const initialState = update(defaultState, {
4558
},
4659
},
4760
volumes: {
48-
// @ts-expect-error ts-migrate(2322) FIXME: Type '{ type: string; activeCellId: number; active... Remove this comment to see the full error message
4961
$set: [volumeTracing],
5062
},
5163
},
@@ -62,12 +74,12 @@ export const initialState = update(defaultState, {
6274
[4, 4, 4],
6375
],
6476
category: "segmentation",
77+
largestSegmentId: volumeTracing.largestSegmentId ?? 0,
6578
elementClass: "uint32",
6679
name: volumeTracing.tracingId,
6780
tracingId: volumeTracing.tracingId,
68-
// @ts-expect-error ts-migrate(2322) FIXME: Type '{ resolutions: [number, number, number][]; c... Remove this comment to see the full error message
69-
isDisabled: false,
70-
alpha: 100,
81+
additionalAxes: [],
82+
boundingBox: convertFrontendBoundingBoxToServer(volumeTracing.boundingBox!),
7183
},
7284
],
7385
},
@@ -109,3 +121,8 @@ export const initialState = update(defaultState, {
109121
},
110122
},
111123
});
124+
125+
export const initialState = combinedReducer(
126+
stateWithoutDatasetInitialization,
127+
setDatasetAction(apiDatasetForVolumeTracing),
128+
);

frontend/javascripts/viewer/api/wk_dev.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import type ApiLoader from "./api_loader";
1111
// Can be accessed via window.webknossos.DEV.flags. Only use this
1212
// for debugging or one off scripts.
1313
export const WkDevFlags = {
14-
logActions: true,
14+
logActions: false,
1515
sam: {
1616
useLocalMask: true,
1717
},

frontend/javascripts/viewer/controller/viewmodes/arbitrary_controller.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,13 @@ import {
4040
toggleAllTreesAction,
4141
toggleInactiveTreesAction,
4242
} from "viewer/model/actions/skeletontracing_actions";
43+
import { deleteNodeAsUserAction } from "viewer/model/actions/skeletontracing_actions_with_effects";
4344
import { listenToStoreProperty } from "viewer/model/helpers/listener_helpers";
4445
import { api } from "viewer/singletons";
4546
import Store from "viewer/store";
4647
import ArbitraryView from "viewer/view/arbitrary_view";
4748
import { downloadScreenshot } from "viewer/view/rendering_utils";
4849
import { SkeletonToolController } from "../combinations/tool_controls";
49-
import { deleteNodeAsUserAction } from "viewer/model/actions/skeletontracing_actions_with_effects";
5050

5151
const arbitraryViewportId = "inputcatcher_arbitraryViewport";
5252
type Props = {

frontend/javascripts/viewer/controller/viewmodes/plane_controller.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ import {
4848
toggleAllTreesAction,
4949
toggleInactiveTreesAction,
5050
} from "viewer/model/actions/skeletontracing_actions";
51+
import { deleteNodeAsUserAction } from "viewer/model/actions/skeletontracing_actions_with_effects";
5152
import {
5253
cycleToolAction,
5354
enterAction,
@@ -69,7 +70,6 @@ import { showToastWarningForLargestSegmentIdMissing } from "viewer/view/largest_
6970
import PlaneView from "viewer/view/plane_view";
7071
import { downloadScreenshot } from "viewer/view/rendering_utils";
7172
import { highlightAndSetCursorOnHoveredBoundingBox } from "../combinations/bounding_box_handlers";
72-
import { deleteNodeAsUserAction } from "viewer/model/actions/skeletontracing_actions_with_effects";
7373

7474
function ensureNonConflictingHandlers(
7575
skeletonControls: Record<string, any>,

frontend/javascripts/viewer/model/actions/skeletontracing_actions_with_effects.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@ import type { WebknossosState } from "viewer/store";
1010
import Store from "viewer/store";
1111
import RemoveTreeModal from "viewer/view/remove_tree_modal";
1212
import {
13-
deleteNodeAction,
1413
type DeleteNodeAction,
15-
deleteTreeAction,
1614
type DeleteTreeAction,
17-
noAction,
1815
type NoAction,
16+
deleteNodeAction,
17+
deleteTreeAction,
18+
noAction,
1919
} from "./skeletontracing_actions";
2020

2121
// The following functions are used as a direct response to a user action.

frontend/javascripts/viewer/view/context_menu.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,14 +137,14 @@ import type {
137137
VolumeTracing,
138138
} from "viewer/store";
139139

140+
import { deleteNodeAsUserAction } from "viewer/model/actions/skeletontracing_actions_with_effects";
140141
import { type MutableNode, type Tree, TreeMap } from "viewer/model/types/tree_types";
141142
import Store from "viewer/store";
142143
import {
143144
getVolumeRequestUrl,
144145
withMappingActivationConfirmation,
145146
} from "viewer/view/right-border-tabs/segments_tab/segments_view_helper";
146147
import { LoadMeshMenuItemLabel } from "./right-border-tabs/segments_tab/load_mesh_menu_item_label";
147-
import { deleteNodeAsUserAction } from "viewer/model/actions/skeletontracing_actions_with_effects";
148148

149149
type ContextMenuContextValue = React.MutableRefObject<HTMLElement | null> | null;
150150
export const ContextMenuContext = createContext<ContextMenuContextValue>(null);

frontend/javascripts/viewer/view/right-border-tabs/trees_tab/skeleton_tab_view.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ import {
5454
toggleAllTreesAction,
5555
toggleInactiveTreesAction,
5656
} from "viewer/model/actions/skeletontracing_actions";
57+
import { handleDeleteTreeByUser } from "viewer/model/actions/skeletontracing_actions_with_effects";
5758
import { setDropzoneModalVisibilityAction } from "viewer/model/actions/ui_actions";
5859
import {
5960
importVolumeTracingAction,
@@ -86,7 +87,6 @@ import {
8687
} from "viewer/view/right-border-tabs/trees_tab/tree_hierarchy_view_helpers";
8788
import AdvancedSearchPopover from "../advanced_search_popover";
8889
import DeleteGroupModalView from "../delete_group_modal_view";
89-
import { handleDeleteTreeByUser } from "viewer/model/actions/skeletontracing_actions_with_effects";
9090

9191
const { confirm } = Modal;
9292
const treeTabId = "tree-list";

0 commit comments

Comments
 (0)