@trackunit/react-core-contexts-test 1.3.72 → 1.3.74
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.cjs.js
CHANGED
|
@@ -204,6 +204,13 @@ const mockOemBrandingContext = {
|
|
|
204
204
|
getOemImage: doNothing,
|
|
205
205
|
};
|
|
206
206
|
|
|
207
|
+
const mockTimeRangeContext = {
|
|
208
|
+
timeRange: {
|
|
209
|
+
startMsInEpoch: 1,
|
|
210
|
+
endMsInEpoch: 2,
|
|
211
|
+
},
|
|
212
|
+
};
|
|
213
|
+
|
|
207
214
|
const mockToastContext = {
|
|
208
215
|
addToast: doNothing,
|
|
209
216
|
setIsManifestError: doNothing,
|
|
@@ -303,7 +310,7 @@ const RouterContainer = ({ addTestRootContainer, selectedRouterProps, rootRoute,
|
|
|
303
310
|
const client = react.useApolloClient();
|
|
304
311
|
// The current version of createMemoryHistory seem to have issues when NOT ending on / so adding a # will not effect what url is rendered but it seems to work
|
|
305
312
|
const memoryHistory = React.useRef(reactRouter.createMemoryHistory({
|
|
306
|
-
initialEntries: selectedRouterProps?.initialEntries?.map(entry => entry.path + "#") ?? ["/#"],
|
|
313
|
+
initialEntries: selectedRouterProps?.initialEntries?.reverse().map(entry => entry.path + "#") ?? ["/#"],
|
|
307
314
|
initialIndex: 0,
|
|
308
315
|
}));
|
|
309
316
|
const getChildren = React.useCallback(() => children, [children]);
|
|
@@ -340,6 +347,9 @@ const RouterContainer = ({ addTestRootContainer, selectedRouterProps, rootRoute,
|
|
|
340
347
|
selectedRouterProps?.initialEntries?.forEach(entry => {
|
|
341
348
|
const route = pathsToRoute[entry.route];
|
|
342
349
|
if (route) {
|
|
350
|
+
if (entry.beforeLoad) {
|
|
351
|
+
route.options.beforeLoad = entry.beforeLoad;
|
|
352
|
+
}
|
|
343
353
|
if (entry.component) {
|
|
344
354
|
route.options.component = entry.component;
|
|
345
355
|
}
|
|
@@ -373,6 +383,8 @@ const RouterContainer = ({ addTestRootContainer, selectedRouterProps, rootRoute,
|
|
|
373
383
|
return reactRouter.createRouter({
|
|
374
384
|
routeTree: localRootRoute,
|
|
375
385
|
history: memoryHistory.current,
|
|
386
|
+
defaultPendingMs: 0,
|
|
387
|
+
defaultPendingMinMs: 0, // Add this to control minimum pending time
|
|
376
388
|
context: {
|
|
377
389
|
hasAccessTo: async () => {
|
|
378
390
|
return true;
|
|
@@ -457,6 +469,7 @@ class TrackunitProvidersMockBuilder {
|
|
|
457
469
|
constructor() {
|
|
458
470
|
this.selectedEnvironmentContext = mockEnvironmentContext;
|
|
459
471
|
this.selectedModalDialogContext = mockModalDialogContext;
|
|
472
|
+
this.selectedTimeRangeContext = mockTimeRangeContext;
|
|
460
473
|
this.selectedNavigationContext = mockNavigationContext;
|
|
461
474
|
this.selectedTokenContext = { token: "fakeToken" };
|
|
462
475
|
this.selectedApolloMocks = [];
|
|
@@ -534,6 +547,16 @@ class TrackunitProvidersMockBuilder {
|
|
|
534
547
|
this.selectedEnvironmentContext = { ...mockEnvironmentContext, ...environmentContext };
|
|
535
548
|
return this;
|
|
536
549
|
}
|
|
550
|
+
/**
|
|
551
|
+
* Use this Time Range Context, used for myhome.
|
|
552
|
+
* Defaults to mockTimeRangeContext.
|
|
553
|
+
*
|
|
554
|
+
* @see mockTimeRangeContext
|
|
555
|
+
*/
|
|
556
|
+
timeRange(timeRangeContext) {
|
|
557
|
+
this.selectedTimeRangeContext = { ...mockTimeRangeContext, ...timeRangeContext };
|
|
558
|
+
return this;
|
|
559
|
+
}
|
|
537
560
|
/**
|
|
538
561
|
* Use this Navigation Context.
|
|
539
562
|
* Defaults to mockNavigationContext.
|
|
@@ -870,7 +893,7 @@ class TrackunitProvidersMockBuilder {
|
|
|
870
893
|
* @param testChildren - the child element being tested.
|
|
871
894
|
*/
|
|
872
895
|
getMockedCompositionRoot(testChildren) {
|
|
873
|
-
return (jsxRuntime.jsx(reactCoreHooks.ErrorHandlingContextProvider, { value: this.selectedErrorHandler, children: jsxRuntime.jsx(reactCoreHooks.CurrentUserProvider, { value: this.selectedCurrentUserContext, children: jsxRuntime.jsx(reactCoreHooks.AnalyticsContext.Provider, { value: this.selectedAnalyticsContext, children: jsxRuntime.jsx(reactCoreHooks.UserSubscriptionProvider, { value: this.selectedUserSubscriptionContext, children: jsxRuntime.jsx(reactCoreHooks.OemBrandingContextProvider, { value: this.selectedOemBrandingContext, children: jsxRuntime.jsx(reactCoreHooks.TokenProvider, { value: this.selectedTokenContext, children: jsxRuntime.jsx(reactCoreHooks.ToastProvider, { value: this.selectedToastContext, children: jsxRuntime.jsx(reactCoreHooks.ConfirmationDialogProvider, { value: this.selectedConfirmationDialogContext, children: jsxRuntime.jsx(reactCoreHooks.FilterBarProvider, { value: this.selectedFilterBarValues, children: jsxRuntime.jsx(reactCoreHooks.AssetSortingProvider, { value: this.selectedAssetSortingContext, children: jsxRuntime.jsx(ApolloMockedProviderWithError, { addTypename: false, mocks: this.selectedApolloMocks, children: jsxRuntime.jsx(reactCoreHooks.NavigationContextProvider, { value: this.selectedNavigationContext, children: jsxRuntime.jsx(reactCoreHooks.CurrentUserPreferenceProvider, { value: this.selectedCurrentUserPreferenceContext, children: jsxRuntime.jsx(reactCoreHooks.EnvironmentContextProvider, { value: this.selectedEnvironmentContext, children: jsxRuntime.jsx(reactCoreHooks.ModalDialogContextProvider, { value: this.selectedModalDialogContext, children: testChildren }) }) }) }) }) }) }) }) }) }) }) }) }) }) }));
|
|
896
|
+
return (jsxRuntime.jsx(reactCoreHooks.ErrorHandlingContextProvider, { value: this.selectedErrorHandler, children: jsxRuntime.jsx(reactCoreHooks.CurrentUserProvider, { value: this.selectedCurrentUserContext, children: jsxRuntime.jsx(reactCoreHooks.AnalyticsContext.Provider, { value: this.selectedAnalyticsContext, children: jsxRuntime.jsx(reactCoreHooks.UserSubscriptionProvider, { value: this.selectedUserSubscriptionContext, children: jsxRuntime.jsx(reactCoreHooks.OemBrandingContextProvider, { value: this.selectedOemBrandingContext, children: jsxRuntime.jsx(reactCoreHooks.TokenProvider, { value: this.selectedTokenContext, children: jsxRuntime.jsx(reactCoreHooks.ToastProvider, { value: this.selectedToastContext, children: jsxRuntime.jsx(reactCoreHooks.ConfirmationDialogProvider, { value: this.selectedConfirmationDialogContext, children: jsxRuntime.jsx(reactCoreHooks.FilterBarProvider, { value: this.selectedFilterBarValues, children: jsxRuntime.jsx(reactCoreHooks.AssetSortingProvider, { value: this.selectedAssetSortingContext, children: jsxRuntime.jsx(ApolloMockedProviderWithError, { addTypename: false, mocks: this.selectedApolloMocks, children: jsxRuntime.jsx(reactCoreHooks.NavigationContextProvider, { value: this.selectedNavigationContext, children: jsxRuntime.jsx(reactCoreHooks.CurrentUserPreferenceProvider, { value: this.selectedCurrentUserPreferenceContext, children: jsxRuntime.jsx(reactCoreHooks.EnvironmentContextProvider, { value: this.selectedEnvironmentContext, children: jsxRuntime.jsx(reactCoreHooks.ModalDialogContextProvider, { value: this.selectedModalDialogContext, children: jsxRuntime.jsx(reactCoreHooks.TimeRangeProvider, { value: this.selectedTimeRangeContext, children: testChildren }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }));
|
|
874
897
|
}
|
|
875
898
|
getMockedCompositionRootWithRouter(testChildren) {
|
|
876
899
|
const childrenWithRouter = (jsxRuntime.jsx(RouterContainer, { addTestRootContainer: true, rootRoute: this.selectedRootRoute, selectedRouterProps: this.selectedRouterProps, children: testChildren }));
|
package/index.esm.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import { act, render } from '@testing-library/react';
|
|
3
|
-
import { ErrorHandlingContextProvider, CurrentUserProvider, AnalyticsContext, UserSubscriptionProvider, OemBrandingContextProvider, TokenProvider, ToastProvider, ConfirmationDialogProvider, FilterBarProvider, AssetSortingProvider, NavigationContextProvider, CurrentUserPreferenceProvider, EnvironmentContextProvider, ModalDialogContextProvider } from '@trackunit/react-core-hooks';
|
|
3
|
+
import { ErrorHandlingContextProvider, CurrentUserProvider, AnalyticsContext, UserSubscriptionProvider, OemBrandingContextProvider, TokenProvider, ToastProvider, ConfirmationDialogProvider, FilterBarProvider, AssetSortingProvider, NavigationContextProvider, CurrentUserPreferenceProvider, EnvironmentContextProvider, ModalDialogContextProvider, TimeRangeProvider } from '@trackunit/react-core-hooks';
|
|
4
4
|
import omit from 'lodash/omit';
|
|
5
5
|
import { ApolloLink } from '@apollo/client';
|
|
6
6
|
import { loadDevMessages, loadErrorMessages } from '@apollo/client/dev';
|
|
@@ -202,6 +202,13 @@ const mockOemBrandingContext = {
|
|
|
202
202
|
getOemImage: doNothing,
|
|
203
203
|
};
|
|
204
204
|
|
|
205
|
+
const mockTimeRangeContext = {
|
|
206
|
+
timeRange: {
|
|
207
|
+
startMsInEpoch: 1,
|
|
208
|
+
endMsInEpoch: 2,
|
|
209
|
+
},
|
|
210
|
+
};
|
|
211
|
+
|
|
205
212
|
const mockToastContext = {
|
|
206
213
|
addToast: doNothing,
|
|
207
214
|
setIsManifestError: doNothing,
|
|
@@ -301,7 +308,7 @@ const RouterContainer = ({ addTestRootContainer, selectedRouterProps, rootRoute,
|
|
|
301
308
|
const client = useApolloClient();
|
|
302
309
|
// The current version of createMemoryHistory seem to have issues when NOT ending on / so adding a # will not effect what url is rendered but it seems to work
|
|
303
310
|
const memoryHistory = useRef(createMemoryHistory({
|
|
304
|
-
initialEntries: selectedRouterProps?.initialEntries?.map(entry => entry.path + "#") ?? ["/#"],
|
|
311
|
+
initialEntries: selectedRouterProps?.initialEntries?.reverse().map(entry => entry.path + "#") ?? ["/#"],
|
|
305
312
|
initialIndex: 0,
|
|
306
313
|
}));
|
|
307
314
|
const getChildren = useCallback(() => children, [children]);
|
|
@@ -338,6 +345,9 @@ const RouterContainer = ({ addTestRootContainer, selectedRouterProps, rootRoute,
|
|
|
338
345
|
selectedRouterProps?.initialEntries?.forEach(entry => {
|
|
339
346
|
const route = pathsToRoute[entry.route];
|
|
340
347
|
if (route) {
|
|
348
|
+
if (entry.beforeLoad) {
|
|
349
|
+
route.options.beforeLoad = entry.beforeLoad;
|
|
350
|
+
}
|
|
341
351
|
if (entry.component) {
|
|
342
352
|
route.options.component = entry.component;
|
|
343
353
|
}
|
|
@@ -371,6 +381,8 @@ const RouterContainer = ({ addTestRootContainer, selectedRouterProps, rootRoute,
|
|
|
371
381
|
return createRouter({
|
|
372
382
|
routeTree: localRootRoute,
|
|
373
383
|
history: memoryHistory.current,
|
|
384
|
+
defaultPendingMs: 0,
|
|
385
|
+
defaultPendingMinMs: 0, // Add this to control minimum pending time
|
|
374
386
|
context: {
|
|
375
387
|
hasAccessTo: async () => {
|
|
376
388
|
return true;
|
|
@@ -455,6 +467,7 @@ class TrackunitProvidersMockBuilder {
|
|
|
455
467
|
constructor() {
|
|
456
468
|
this.selectedEnvironmentContext = mockEnvironmentContext;
|
|
457
469
|
this.selectedModalDialogContext = mockModalDialogContext;
|
|
470
|
+
this.selectedTimeRangeContext = mockTimeRangeContext;
|
|
458
471
|
this.selectedNavigationContext = mockNavigationContext;
|
|
459
472
|
this.selectedTokenContext = { token: "fakeToken" };
|
|
460
473
|
this.selectedApolloMocks = [];
|
|
@@ -532,6 +545,16 @@ class TrackunitProvidersMockBuilder {
|
|
|
532
545
|
this.selectedEnvironmentContext = { ...mockEnvironmentContext, ...environmentContext };
|
|
533
546
|
return this;
|
|
534
547
|
}
|
|
548
|
+
/**
|
|
549
|
+
* Use this Time Range Context, used for myhome.
|
|
550
|
+
* Defaults to mockTimeRangeContext.
|
|
551
|
+
*
|
|
552
|
+
* @see mockTimeRangeContext
|
|
553
|
+
*/
|
|
554
|
+
timeRange(timeRangeContext) {
|
|
555
|
+
this.selectedTimeRangeContext = { ...mockTimeRangeContext, ...timeRangeContext };
|
|
556
|
+
return this;
|
|
557
|
+
}
|
|
535
558
|
/**
|
|
536
559
|
* Use this Navigation Context.
|
|
537
560
|
* Defaults to mockNavigationContext.
|
|
@@ -868,7 +891,7 @@ class TrackunitProvidersMockBuilder {
|
|
|
868
891
|
* @param testChildren - the child element being tested.
|
|
869
892
|
*/
|
|
870
893
|
getMockedCompositionRoot(testChildren) {
|
|
871
|
-
return (jsx(ErrorHandlingContextProvider, { value: this.selectedErrorHandler, children: jsx(CurrentUserProvider, { value: this.selectedCurrentUserContext, children: jsx(AnalyticsContext.Provider, { value: this.selectedAnalyticsContext, children: jsx(UserSubscriptionProvider, { value: this.selectedUserSubscriptionContext, children: jsx(OemBrandingContextProvider, { value: this.selectedOemBrandingContext, children: jsx(TokenProvider, { value: this.selectedTokenContext, children: jsx(ToastProvider, { value: this.selectedToastContext, children: jsx(ConfirmationDialogProvider, { value: this.selectedConfirmationDialogContext, children: jsx(FilterBarProvider, { value: this.selectedFilterBarValues, children: jsx(AssetSortingProvider, { value: this.selectedAssetSortingContext, children: jsx(ApolloMockedProviderWithError, { addTypename: false, mocks: this.selectedApolloMocks, children: jsx(NavigationContextProvider, { value: this.selectedNavigationContext, children: jsx(CurrentUserPreferenceProvider, { value: this.selectedCurrentUserPreferenceContext, children: jsx(EnvironmentContextProvider, { value: this.selectedEnvironmentContext, children: jsx(ModalDialogContextProvider, { value: this.selectedModalDialogContext, children: testChildren }) }) }) }) }) }) }) }) }) }) }) }) }) }) }));
|
|
894
|
+
return (jsx(ErrorHandlingContextProvider, { value: this.selectedErrorHandler, children: jsx(CurrentUserProvider, { value: this.selectedCurrentUserContext, children: jsx(AnalyticsContext.Provider, { value: this.selectedAnalyticsContext, children: jsx(UserSubscriptionProvider, { value: this.selectedUserSubscriptionContext, children: jsx(OemBrandingContextProvider, { value: this.selectedOemBrandingContext, children: jsx(TokenProvider, { value: this.selectedTokenContext, children: jsx(ToastProvider, { value: this.selectedToastContext, children: jsx(ConfirmationDialogProvider, { value: this.selectedConfirmationDialogContext, children: jsx(FilterBarProvider, { value: this.selectedFilterBarValues, children: jsx(AssetSortingProvider, { value: this.selectedAssetSortingContext, children: jsx(ApolloMockedProviderWithError, { addTypename: false, mocks: this.selectedApolloMocks, children: jsx(NavigationContextProvider, { value: this.selectedNavigationContext, children: jsx(CurrentUserPreferenceProvider, { value: this.selectedCurrentUserPreferenceContext, children: jsx(EnvironmentContextProvider, { value: this.selectedEnvironmentContext, children: jsx(ModalDialogContextProvider, { value: this.selectedModalDialogContext, children: jsx(TimeRangeProvider, { value: this.selectedTimeRangeContext, children: testChildren }) }) }) }) }) }) }) }) }) }) }) }) }) }) }) }));
|
|
872
895
|
}
|
|
873
896
|
getMockedCompositionRootWithRouter(testChildren) {
|
|
874
897
|
const childrenWithRouter = (jsx(RouterContainer, { addTestRootContainer: true, rootRoute: this.selectedRootRoute, selectedRouterProps: this.selectedRouterProps, children: testChildren }));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@trackunit/react-core-contexts-test",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.74",
|
|
4
4
|
"repository": "https://github.com/Trackunit/manager",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.txt",
|
|
6
6
|
"engines": {
|
|
@@ -12,10 +12,11 @@
|
|
|
12
12
|
"react": "19.0.0",
|
|
13
13
|
"lodash": "4.17.21",
|
|
14
14
|
"graphql": "^16.10.0",
|
|
15
|
-
"@tanstack/react-router": "1.
|
|
16
|
-
"@
|
|
17
|
-
"@trackunit/react-core-
|
|
18
|
-
"@trackunit/
|
|
15
|
+
"@tanstack/react-router": "1.114.29",
|
|
16
|
+
"@tanstack/router-core": "1.114.29",
|
|
17
|
+
"@trackunit/react-core-contexts-api": "1.4.71",
|
|
18
|
+
"@trackunit/react-core-hooks": "1.3.73",
|
|
19
|
+
"@trackunit/shared-utils": "1.5.69"
|
|
19
20
|
},
|
|
20
21
|
"module": "./index.esm.js",
|
|
21
22
|
"main": "./index.cjs.js",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { MockedResponse } from "@apollo/client/testing";
|
|
2
2
|
import { AnyRoute } from "@tanstack/react-router";
|
|
3
3
|
import { RenderResult } from "@testing-library/react";
|
|
4
|
-
import { AssetSortingContextValue, ConfirmationDialogContextValue, CurrentUserContextInterface, ErrorHandlingContextValue, FilterBarContext, IAnalyticsContext, IEnvironmentContext, INavigationContext, IToastContext, ITokenContext, IUserPreferencesContext, IUserSubscriptionContext, ModalDialogContextValue, OemBrandingContext } from "@trackunit/react-core-contexts-api";
|
|
4
|
+
import { AssetSortingContextValue, ConfirmationDialogContextValue, CurrentUserContextInterface, ErrorHandlingContextValue, FilterBarContext, IAnalyticsContext, IEnvironmentContext, INavigationContext, IToastContext, ITokenContext, IUserPreferencesContext, IUserSubscriptionContext, ModalDialogContextValue, OemBrandingContext, TimeRangeContext } from "@trackunit/react-core-contexts-api";
|
|
5
5
|
import { ReactElement, ReactNode } from "react";
|
|
6
6
|
import { MemoryRouterProps } from "./utils/routingUtils";
|
|
7
7
|
/**
|
|
@@ -16,6 +16,7 @@ import { MemoryRouterProps } from "./utils/routingUtils";
|
|
|
16
16
|
export declare class TrackunitProvidersMockBuilder<T extends AnyRoute> {
|
|
17
17
|
protected selectedEnvironmentContext: IEnvironmentContext;
|
|
18
18
|
protected selectedModalDialogContext: ModalDialogContextValue;
|
|
19
|
+
protected selectedTimeRangeContext: TimeRangeContext;
|
|
19
20
|
protected selectedNavigationContext: INavigationContext;
|
|
20
21
|
protected selectedTokenContext: ITokenContext;
|
|
21
22
|
protected selectedApolloMocks: MockedResponse[];
|
|
@@ -81,6 +82,13 @@ export declare class TrackunitProvidersMockBuilder<T extends AnyRoute> {
|
|
|
81
82
|
* @returns { TrackunitProvidersMockBuilder } - The builder.
|
|
82
83
|
*/
|
|
83
84
|
environment(environmentContext: Partial<IEnvironmentContext>): this;
|
|
85
|
+
/**
|
|
86
|
+
* Use this Time Range Context, used for myhome.
|
|
87
|
+
* Defaults to mockTimeRangeContext.
|
|
88
|
+
*
|
|
89
|
+
* @see mockTimeRangeContext
|
|
90
|
+
*/
|
|
91
|
+
timeRange(timeRangeContext: Partial<TimeRangeContext>): this;
|
|
84
92
|
/**
|
|
85
93
|
* Use this Navigation Context.
|
|
86
94
|
* Defaults to mockNavigationContext.
|