Skip to content

Commit 6df115e

Browse files
additional fixes
1 parent e3ff136 commit 6df115e

File tree

3 files changed

+20
-16
lines changed

3 files changed

+20
-16
lines changed

packages/itwin/tree-widget/src/test/trees/models-tree/ModelsTreeFiltering.test.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ import { createIModelAccess } from "../Common.js";
3232
import { NodeValidators, validateHierarchy } from "../HierarchyValidation.js";
3333
import { createClassGroupingHierarchyNode, createModelsTreeProvider, getGroupingNodeParentKeys } from "./Utils.js";
3434

35-
import type { HierarchyFilteringPath } from "@itwin/presentation-hierarchies";
3635
import type { Id64String } from "@itwin/core-bentley";
3736
import type { IModelConnection } from "@itwin/core-frontend";
3837
import type { InstanceKey } from "@itwin/presentation-common";

packages/itwin/tree-widget/src/test/trees/models-tree/UseModelsTree.test.tsx

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -120,9 +120,10 @@ describe("useModelsTree", () => {
120120
it("getFilteredPaths returns correct result when getSubTreePaths is defined", async () => {
121121
const { result: renderHookResult } = renderHook(useModelsTree, { initialProps: { ...initialProps, getSubTreePaths } });
122122
const { getFilteredPaths } = renderHookResult.current.modelsTreeProps;
123+
const abortSignal = new AbortController().signal;
123124
await waitFor(async () => {
124125
expect(getFilteredPaths).to.not.be.undefined;
125-
const result = (await getFilteredPaths!({ imodelAccess /* abortSignal */ }))?.sort((lhs, rhs) => {
126+
const result = (await getFilteredPaths!({ imodelAccess, abortSignal }))?.sort((lhs, rhs) => {
126127
if (HierarchyFilteringPath.normalize(lhs).path.length > HierarchyFilteringPath.normalize(rhs).path.length) {
127128
return -1;
128129
}
@@ -148,9 +149,10 @@ describe("useModelsTree", () => {
148149
it("getFilteredPaths returns correct result when getSubTreePaths and filter is defined", async () => {
149150
const { result: renderHookResult } = renderHook(useModelsTree, { initialProps: { ...initialProps, getSubTreePaths, filter: "element2" } });
150151
const { getFilteredPaths } = renderHookResult.current.modelsTreeProps;
152+
const abortSignal = new AbortController().signal;
151153
await waitFor(async () => {
152154
expect(getFilteredPaths).to.not.be.undefined;
153-
const result = await getFilteredPaths!({ imodelAccess /* abortSignal */ });
155+
const result = await getFilteredPaths!({ imodelAccess, abortSignal });
154156
const expectedResult: HierarchyFilteringPath[] = [
155157
{
156158
path: [
@@ -184,9 +186,11 @@ describe("useModelsTree", () => {
184186
initialProps: { ...initialProps, getSubTreePaths, getFilteredPaths: getFilteredPathsForProps },
185187
});
186188
const { getFilteredPaths } = renderHookResult.current.modelsTreeProps;
189+
const abortSignal = new AbortController().signal;
190+
187191
await waitFor(async () => {
188192
expect(getFilteredPaths).to.not.be.undefined;
189-
const result = await getFilteredPaths!({ imodelAccess /* abortSignal */ });
193+
const result = await getFilteredPaths!({ imodelAccess, abortSignal });
190194
const expectedResult: HierarchyFilteringPath[] = [
191195
{
192196
path: [
@@ -237,10 +241,11 @@ describe("useModelsTree", () => {
237241
});
238242

239243
const { getFilteredPaths } = hooksResult.current.modelsTree.modelsTreeProps;
244+
const abortSignal = new AbortController().signal;
240245

241246
await waitFor(async () => {
242247
expect(getFilteredPaths).to.not.be.undefined;
243-
const result = await getFilteredPaths!({ imodelAccess /* abortSignal */ });
248+
const result = await getFilteredPaths!({ imodelAccess, abortSignal });
244249
const expectedResult: HierarchyFilteringPath[] = [
245250
{
246251
path: [

packages/itwin/tree-widget/src/tree-widget-react/components/trees/models-tree/internal/UseFilteredPaths.ts

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ export function useFilteredPaths({
7777
if (!getSubTreePaths) {
7878
return undefined;
7979
}
80-
return async ({ imodelAccess /* abortSignal */ }) => {
80+
return async ({ imodelAccess, abortSignal }) => {
8181
try {
8282
const paths = await getSubTreePaths({
8383
createInstanceKeyPaths: async ({ targetItems }) =>
@@ -87,7 +87,7 @@ export function useFilteredPaths({
8787
idsCache: getModelsTreeIdsCache(),
8888
hierarchyConfig: hierarchyConfiguration,
8989
limit: "unbounded",
90-
// abortSignal,
90+
abortSignal,
9191
}),
9292
});
9393
return paths.map((path) => HierarchyFilteringPath.normalize(path).path);
@@ -111,7 +111,7 @@ export function useFilteredPaths({
111111
};
112112

113113
if (loadFocusedItems) {
114-
return async ({ imodelAccess /* abortSignal */ }) => {
114+
return async ({ imodelAccess, abortSignal }) => {
115115
try {
116116
const focusedItems = await collectFocusedItems(loadFocusedItems);
117117
return await createFilteringPathsResult({
@@ -121,9 +121,9 @@ export function useFilteredPaths({
121121
idsCache: getModelsTreeIdsCache(),
122122
targetItems: focusedItems,
123123
hierarchyConfig: hierarchyConfiguration,
124-
// abortSignal,
124+
abortSignal,
125125
}).then((createdPaths) => createdPaths.map((path) => ("path" in path ? path : { path, options: { autoExpand: true } }))),
126-
getSubTreePaths: async () => (getSubTreePathsInternal ? getSubTreePathsInternal({ imodelAccess /* abortSignal */ }) : undefined),
126+
getSubTreePaths: async () => (getSubTreePathsInternal ? getSubTreePathsInternal({ imodelAccess, abortSignal }) : undefined),
127127
handlePaths: async (paths) => handlePaths(paths, imodelAccess),
128128
});
129129
} catch (e) {
@@ -139,7 +139,7 @@ export function useFilteredPaths({
139139
}
140140

141141
if (getFilteredPaths) {
142-
return async ({ imodelAccess /* abortSignal */ }) => {
142+
return async ({ imodelAccess, abortSignal }) => {
143143
try {
144144
return await createFilteringPathsResult({
145145
getFilteringPaths: async () =>
@@ -151,11 +151,11 @@ export function useFilteredPaths({
151151
idsCache: getModelsTreeIdsCache(),
152152
hierarchyConfig: hierarchyConfiguration,
153153
limit: "unbounded",
154-
// abortSignal,
154+
abortSignal,
155155
}),
156156
filter,
157157
}),
158-
getSubTreePaths: async () => (getSubTreePathsInternal ? getSubTreePathsInternal({ imodelAccess /* abortSignal */ }) : undefined),
158+
getSubTreePaths: async () => (getSubTreePathsInternal ? getSubTreePathsInternal({ imodelAccess, abortSignal }) : undefined),
159159
handlePaths: async (paths) => handlePaths(paths, imodelAccess),
160160
});
161161
} catch (e) {
@@ -171,7 +171,7 @@ export function useFilteredPaths({
171171
}
172172

173173
if (filter) {
174-
return async ({ imodelAccess /* abortSignal */ }) => {
174+
return async ({ imodelAccess, abortSignal }) => {
175175
onFeatureUsed({ featureId: "filtering", reportInteraction: true });
176176
try {
177177
return await createFilteringPathsResult({
@@ -181,9 +181,9 @@ export function useFilteredPaths({
181181
label: filter,
182182
idsCache: getModelsTreeIdsCache(),
183183
hierarchyConfig: hierarchyConfiguration,
184-
// abortSignal,
184+
abortSignal,
185185
}).then((createdPaths) => createdPaths.map((path) => ("path" in path ? path : { path, options: { autoExpand: true } }))),
186-
getSubTreePaths: async () => (getSubTreePathsInternal ? getSubTreePathsInternal({ imodelAccess /* abortSignal */ }) : undefined),
186+
getSubTreePaths: async () => (getSubTreePathsInternal ? getSubTreePathsInternal({ imodelAccess, abortSignal }) : undefined),
187187
handlePaths: async (paths) => handlePaths(paths, imodelAccess),
188188
});
189189
} catch (e) {

0 commit comments

Comments
 (0)