@mysetup/test-helpers 1.1.0 → 1.3.0
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/dist/helpers/index.d.ts
CHANGED
|
@@ -2,7 +2,8 @@ import { render, type RenderOptions, type RenderHookOptions } from "@testing-lib
|
|
|
2
2
|
import { userEvent } from "@testing-library/user-event";
|
|
3
3
|
import { type ReactNode, type ComponentType } from "react";
|
|
4
4
|
import { type ProviderProps, type AppState } from "@mysetup/types";
|
|
5
|
-
type
|
|
5
|
+
import type { MockedProviderProps } from "./mock-testing";
|
|
6
|
+
type MockOptions = MockedProviderProps & MockNavigation & MockBreakpoint;
|
|
6
7
|
interface MockNavigation {
|
|
7
8
|
navigation?: {
|
|
8
9
|
pathname?: string;
|
|
@@ -20,11 +21,11 @@ interface ContextProvierProps extends ProviderProps {
|
|
|
20
21
|
export declare const setupRender: <Props extends Record<string, any>>(Component: ComponentType<Props>, defaultProps?: Partial<Props & {
|
|
21
22
|
"data-testid": string;
|
|
22
23
|
}>, defaultOptions?: RenderOptions & MockOptions) => ((passedProps?: Partial<Props>, passedOptions?: RenderOptions & MockOptions) => ReturnType<typeof render>);
|
|
23
|
-
export declare const setupRenderWithProvider: <Props extends Record<string, any>>(Component: ComponentType<Props>, Provider: ComponentType<ContextProvierProps>, defaultProps?: Partial<Props & {
|
|
24
|
+
export declare const setupRenderWithProvider: <Props extends Record<string, any>>(Component: ComponentType<Props>, Provider: ComponentType<ContextProvierProps>, defaultAppState: Partial<AppState>, defaultProps?: Partial<Props & {
|
|
24
25
|
"data-testid": string;
|
|
25
|
-
}>,
|
|
26
|
+
}>, defaultOptions?: RenderOptions & MockOptions) => ((passedProps?: Partial<Props>, passedAppState?: Partial<AppState>, passedOptions?: RenderOptions & MockOptions) => ReturnType<typeof render>);
|
|
26
27
|
export declare const setupRenderHook: <Result, Props>(hook: (initialProps: Props) => Result, defaultProps?: Props, defaultOptions?: RenderHookOptions<Props> & MockOptions) => (passedProps?: Partial<Props>, passedOptions?: RenderHookOptions<Props> & MockOptions) => import("@testing-library/react").RenderHookResult<Result, Props>;
|
|
27
|
-
export declare const setupRenderHookWithProvider: <Result, Props>(hook: (initialProps: Props) => Result, Provider: ComponentType<ContextProvierProps>,
|
|
28
|
+
export declare const setupRenderHookWithProvider: <Result, Props>(hook: (initialProps: Props) => Result, Provider: ComponentType<ContextProvierProps>, defaultAppState?: Partial<AppState>, defaultProps?: Props, defaultOptions?: RenderHookOptions<Props> & MockOptions) => (passedProps?: Partial<Props>, passedAppState?: Partial<AppState> | null, passedOptions?: RenderHookOptions<Props> & MockOptions) => import("@testing-library/react").RenderHookResult<Result, Props>;
|
|
28
29
|
export declare const getById: (container: HTMLElement, id: import("@testing-library/react").Matcher, options?: import("@testing-library/react").MatcherOptions | undefined) => HTMLElement | null;
|
|
29
30
|
export { userEvent };
|
|
30
31
|
export * from "jest-axe";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../helpers/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEH,MAAM,EAEN,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACzB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAc,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAElE,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEnE,KAAK,WAAW,GAAG,cAAc,GAAG,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../helpers/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEH,MAAM,EAEN,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACzB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAc,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAElE,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,KAAK,WAAW,GAAG,mBAAmB,GAAG,cAAc,GAAG,cAAc,CAAC;AAEzE,UAAU,cAAc;IACpB,UAAU,CAAC,EAAE;QACT,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE;YACL,UAAU,CAAC,EAAE,MAAM,CAAC;SACvB,CAAC;KACL,CAAC;CACL;AAED,UAAU,cAAc;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAeD,UAAU,mBAAoB,SAAQ,aAAa;IAC/C,QAAQ,EAAE,SAAS,CAAC;CACvB;AAED,eAAO,MAAM,WAAW,GAEpB,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,aAEtB,aAAa,CAAC,KAAK,CAAC,iBACjB,OAAO,CAAC,KAAK,GAAG;IAAE,aAAa,EAAE,MAAM,CAAA;CAAE,CAAC,mBACxC,aAAa,GAAG,WAAW,KAC5C,CAAC,CACA,WAAW,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,EAC5B,aAAa,CAAC,EAAE,aAAa,GAAG,WAAW,KAC1C,UAAU,CAAC,OAAO,MAAM,CAAC,CAiD7B,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAEhC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,aAEtB,aAAa,CAAC,KAAK,CAAC,YACrB,aAAa,CAAC,mBAAmB,CAAC,mBAC3B,OAAO,CAAC,QAAQ,CAAC,iBACpB,OAAO,CAAC,KAAK,GAAG;IAAE,aAAa,EAAE,MAAM,CAAA;CAAE,CAAC,mBACxC,aAAa,GAAG,WAAW,KAC5C,CAAC,CACA,WAAW,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,EAC5B,cAAc,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,EAClC,aAAa,CAAC,EAAE,aAAa,GAAG,WAAW,KAC1C,UAAU,CAAC,OAAO,MAAM,CAAC,CA0D7B,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,MAAM,EAAE,KAAK,QACnC,CAAC,YAAY,EAAE,KAAK,KAAK,MAAM,iBACtB,KAAK,mBACH,iBAAiB,CAAC,KAAK,CAAC,GAAG,WAAW,oBAGrC,OAAO,CAAC,KAAK,CAAC,kBACb,iBAAiB,CAAC,KAAK,CAAC,GAAG,WAAW,qEAwB5D,CAAC;AAEF,eAAO,MAAM,2BAA2B,GAAI,MAAM,EAAE,KAAK,QAC/C,CAAC,YAAY,EAAE,KAAK,KAAK,MAAM,YAC3B,aAAa,CAAC,mBAAmB,CAAC,oBAC1B,OAAO,CAAC,QAAQ,CAAC,iBACpB,KAAK,mBACH,iBAAiB,CAAC,KAAK,CAAC,GAAG,WAAW,oBAGrC,OAAO,CAAC,KAAK,CAAC,mBACX,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,kBAC1B,iBAAiB,CAAC,KAAK,CAAC,GAAG,WAAW,qEAkC5D,CAAC;AAEF,eAAO,MAAM,OAAO,qKAAoC,CAAC;AAEzD,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,cAAc,UAAU,CAAC;AACzB,cAAc,wBAAwB,CAAC"}
|
package/dist/helpers/index.js
CHANGED
|
@@ -46,6 +46,7 @@ var user_event_1 = require("@testing-library/user-event");
|
|
|
46
46
|
Object.defineProperty(exports, "userEvent", { enumerable: true, get: function () { return user_event_1.userEvent; } });
|
|
47
47
|
var react_2 = __importDefault(require("react"));
|
|
48
48
|
var navigation_1 = require("next/navigation");
|
|
49
|
+
var mock_testing_1 = require("./mock-testing");
|
|
49
50
|
globals_1.jest.doMock("next/navigation", function () { return ({
|
|
50
51
|
usePathname: globals_1.jest.fn(),
|
|
51
52
|
useSearchParams: globals_1.jest.fn(),
|
|
@@ -83,9 +84,8 @@ var setupRender = function (Component, defaultProps, defaultOptions) {
|
|
|
83
84
|
};
|
|
84
85
|
};
|
|
85
86
|
exports.setupRender = setupRender;
|
|
86
|
-
var setupRenderWithProvider = function (Component, Provider,
|
|
87
|
+
var setupRenderWithProvider = function (Component, Provider, defaultAppState, defaultProps, defaultOptions) {
|
|
87
88
|
if (defaultProps === void 0) { defaultProps = {}; }
|
|
88
|
-
if (defaultAppState === void 0) { defaultAppState = {}; }
|
|
89
89
|
if (defaultOptions === void 0) { defaultOptions = {}; }
|
|
90
90
|
return function (passedProps, passedAppState, passedOptions) {
|
|
91
91
|
var _a;
|
|
@@ -93,7 +93,7 @@ var setupRenderWithProvider = function (Component, Provider, defaultProps, defau
|
|
|
93
93
|
if (passedAppState === void 0) { passedAppState = {}; }
|
|
94
94
|
if (passedOptions === void 0) { passedOptions = {}; }
|
|
95
95
|
var props = __assign(__assign({}, defaultProps), passedProps);
|
|
96
|
-
var _b = __assign(__assign({}, defaultOptions), passedOptions), _c = _b.navigation, navigation = _c === void 0 ? {} : _c, Wrapper = _b.wrapper, breakpoint = _b.breakpoint, options = __rest(_b, ["navigation", "wrapper", "breakpoint"]);
|
|
96
|
+
var _b = __assign(__assign({}, defaultOptions), passedOptions), mocks = _b.mocks, _c = _b.navigation, navigation = _c === void 0 ? {} : _c, Wrapper = _b.wrapper, breakpoint = _b.breakpoint, options = __rest(_b, ["mocks", "navigation", "wrapper", "breakpoint"]);
|
|
97
97
|
var appState = __assign(__assign({}, defaultAppState), passedAppState);
|
|
98
98
|
if (navigation.pathname) {
|
|
99
99
|
navigation_1.usePathname.mockReturnValue(navigation.pathname);
|
|
@@ -106,8 +106,9 @@ var setupRenderWithProvider = function (Component, Provider, defaultProps, defau
|
|
|
106
106
|
value: breakpoint,
|
|
107
107
|
});
|
|
108
108
|
}
|
|
109
|
-
return (0, react_1.render)(react_2.default.createElement(
|
|
110
|
-
react_2.default.createElement(
|
|
109
|
+
return (0, react_1.render)(react_2.default.createElement(mock_testing_1.MockedProvider, { mocks: mocks },
|
|
110
|
+
react_2.default.createElement(Provider, { appState: appState, version: "test" }, Wrapper ? (react_2.default.createElement(Wrapper, null,
|
|
111
|
+
react_2.default.createElement(Component, __assign({}, props)))) : (react_2.default.createElement(Component, __assign({}, props))))), options);
|
|
111
112
|
};
|
|
112
113
|
};
|
|
113
114
|
exports.setupRenderWithProvider = setupRenderWithProvider;
|
|
@@ -126,18 +127,19 @@ var setupRenderHook = function (hook, defaultProps, defaultOptions) {
|
|
|
126
127
|
};
|
|
127
128
|
};
|
|
128
129
|
exports.setupRenderHook = setupRenderHook;
|
|
129
|
-
var setupRenderHookWithProvider = function (hook, Provider,
|
|
130
|
+
var setupRenderHookWithProvider = function (hook, Provider, defaultAppState, defaultProps, defaultOptions) {
|
|
130
131
|
return function (passedProps, passedAppState, passedOptions) {
|
|
131
132
|
if (passedOptions === void 0) { passedOptions = {}; }
|
|
132
133
|
var props = (passedProps !== null && passedProps !== void 0 ? passedProps : defaultProps);
|
|
133
|
-
var _a = __assign(__assign({}, defaultOptions), passedOptions), _b = _a.navigation, navigation = _b === void 0 ? {} : _b, Wrapper = _a.wrapper, options = __rest(_a, ["navigation", "wrapper"]);
|
|
134
|
+
var _a = __assign(__assign({}, defaultOptions), passedOptions), mocks = _a.mocks, _b = _a.navigation, navigation = _b === void 0 ? {} : _b, Wrapper = _a.wrapper, options = __rest(_a, ["mocks", "navigation", "wrapper"]);
|
|
134
135
|
var appState = __assign(__assign({}, defaultAppState), passedAppState);
|
|
135
136
|
if (navigation.pathname) {
|
|
136
137
|
navigation_1.usePathname.mockReturnValue(navigation.pathname);
|
|
137
138
|
}
|
|
138
139
|
return (0, react_1.renderHook)(function () { return hook(props); }, __assign(__assign({}, options), { wrapper: function (_a) {
|
|
139
140
|
var children = _a.children;
|
|
140
|
-
return (react_2.default.createElement(
|
|
141
|
+
return (react_2.default.createElement(mock_testing_1.MockedProvider, { mocks: mocks },
|
|
142
|
+
react_2.default.createElement(Provider, { appState: appState, version: "test" }, Wrapper ? react_2.default.createElement(Wrapper, null, children) : children)));
|
|
141
143
|
} }));
|
|
142
144
|
};
|
|
143
145
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-testing.d.ts","sourceRoot":"","sources":["../../helpers/mock-testing.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAElE,cAAc,wBAAwB,CAAC;AAEvC,eAAO,MAAM,cAAc,2BAA4B,mBAAmB,gCAiBzE,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(o, k2, desc);
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
25
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
26
|
+
};
|
|
27
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
28
|
+
var t = {};
|
|
29
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
30
|
+
t[p] = s[p];
|
|
31
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
32
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
33
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
34
|
+
t[p[i]] = s[p[i]];
|
|
35
|
+
}
|
|
36
|
+
return t;
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.MockedProvider = void 0;
|
|
40
|
+
var testing_1 = require("@apollo/client/testing");
|
|
41
|
+
__exportStar(require("@apollo/client/testing"), exports);
|
|
42
|
+
var MockedProvider = function (_a) {
|
|
43
|
+
var children = _a.children, props = __rest(_a, ["children"]);
|
|
44
|
+
return (React.createElement(testing_1.MockedProvider, __assign({ defaultOptions: __assign({ mutate: {
|
|
45
|
+
errorPolicy: "all",
|
|
46
|
+
}, query: {
|
|
47
|
+
errorPolicy: "all",
|
|
48
|
+
fetchPolicy: "no-cache",
|
|
49
|
+
}, watchQuery: { fetchPolicy: "no-cache" } }, props.defaultOptions) }, props), children));
|
|
50
|
+
};
|
|
51
|
+
exports.MockedProvider = MockedProvider;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mysetup/test-helpers",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"files": [
|
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
"clean": "rm -rf node_modules .swc dist pnpm-lock.yaml && echo \"✅ Successfully removed \""
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
+
"@apollo/client": "^3.11.9",
|
|
29
30
|
"@testing-library/dom": "^10.4.0",
|
|
30
31
|
"@testing-library/jest-dom": "^6.6.3",
|
|
31
32
|
"@testing-library/react": "^16.0.1",
|