@tramvai/test-react 2.70.1 → 2.72.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/lib/index.es.js CHANGED
@@ -1,52 +1,3 @@
1
- import { render, act, screen, fireEvent, renderHook, waitFor } from '@testing-library/react';
2
1
  export * from '@testing-library/react';
3
- import { jsx } from 'react/jsx-runtime';
4
- import { Provider } from '@tramvai/state';
5
- import { DIContext } from '@tramvai/react';
6
- import { Provider as Provider$1 } from '@tinkoff/router';
7
- import { createMockContext, createMockRouter } from '@tramvai/test-mocks';
8
- import { waitRaf } from '@tramvai/test-jsdom';
9
-
10
- const testComponent = (element, { providers, modules, initialState, store, stores, di, context = createMockContext({ initialState, providers, modules, di, store, stores }), currentRoute, currentUrl, router = createMockRouter({ currentRoute, currentUrl }), renderOptions, } = {}) => {
11
- const Wrapper = ({ children }) => (jsx(Provider, { context: context, serverState: initialState, children: jsx(DIContext.Provider, { value: context.di, children: jsx(Provider$1, { router: router, serverState: initialState === null || initialState === void 0 ? void 0 : initialState.router, children: children }) }) }));
12
- const renderResults = render(jsx(Wrapper, { children: element }), renderOptions);
13
- return {
14
- render: renderResults,
15
- rerender: (el) => renderResults.rerender(jsx(Wrapper, { children: el })),
16
- act: (callback) => {
17
- return act(async () => {
18
- await callback();
19
- if (typeof window.requestAnimationFrame !== 'undefined') {
20
- // as some of the state changes in browsers uses requestAnimationFrame to batch updates in single one
21
- // but in tests requestAnimationFrame should mostly should be resolved manually
22
- await waitRaf();
23
- }
24
- });
25
- },
26
- screen,
27
- fireEvent,
28
- context,
29
- router,
30
- };
31
- };
32
-
33
- const testHook = (hookCallback, { providers, modules, initialState, store, stores, di, context = createMockContext({ initialState, providers, modules, di, store, stores }), currentRoute, currentUrl, router = createMockRouter({ currentRoute, currentUrl }), renderOptions, } = {}) => {
34
- var _a;
35
- const Wrapper = (_a = renderOptions === null || renderOptions === void 0 ? void 0 : renderOptions.wrapper) !== null && _a !== void 0 ? _a : (({ children }) => children);
36
- const { result, rerender } = renderHook(hookCallback, {
37
- ...renderOptions,
38
- wrapper: ({ children }) => {
39
- return (jsx(Provider, { context: context, serverState: initialState, children: jsx(DIContext.Provider, { value: context.di, children: jsx(Provider$1, { router: router, serverState: initialState === null || initialState === void 0 ? void 0 : initialState.router, children: jsx(Wrapper, { children: children }) }) }) }));
40
- },
41
- });
42
- return {
43
- result,
44
- rerender,
45
- act,
46
- waitFor,
47
- context,
48
- router,
49
- };
50
- };
51
-
52
- export { testComponent, testHook };
2
+ export { testComponent } from './testComponent.es.js';
3
+ export { testHook } from './testHook.es.js';
package/lib/index.js CHANGED
@@ -3,60 +3,16 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var react = require('@testing-library/react');
6
- var jsxRuntime = require('react/jsx-runtime');
7
- var state = require('@tramvai/state');
8
- var react$1 = require('@tramvai/react');
9
- var router = require('@tinkoff/router');
10
- var testMocks = require('@tramvai/test-mocks');
11
- var testJsdom = require('@tramvai/test-jsdom');
6
+ var testComponent = require('./testComponent.js');
7
+ var testHook = require('./testHook.js');
12
8
 
13
- const testComponent = (element, { providers, modules, initialState, store, stores, di, context = testMocks.createMockContext({ initialState, providers, modules, di, store, stores }), currentRoute, currentUrl, router: router$1 = testMocks.createMockRouter({ currentRoute, currentUrl }), renderOptions, } = {}) => {
14
- const Wrapper = ({ children }) => (jsxRuntime.jsx(state.Provider, { context: context, serverState: initialState, children: jsxRuntime.jsx(react$1.DIContext.Provider, { value: context.di, children: jsxRuntime.jsx(router.Provider, { router: router$1, serverState: initialState === null || initialState === void 0 ? void 0 : initialState.router, children: children }) }) }));
15
- const renderResults = react.render(jsxRuntime.jsx(Wrapper, { children: element }), renderOptions);
16
- return {
17
- render: renderResults,
18
- rerender: (el) => renderResults.rerender(jsxRuntime.jsx(Wrapper, { children: el })),
19
- act: (callback) => {
20
- return react.act(async () => {
21
- await callback();
22
- if (typeof window.requestAnimationFrame !== 'undefined') {
23
- // as some of the state changes in browsers uses requestAnimationFrame to batch updates in single one
24
- // but in tests requestAnimationFrame should mostly should be resolved manually
25
- await testJsdom.waitRaf();
26
- }
27
- });
28
- },
29
- screen: react.screen,
30
- fireEvent: react.fireEvent,
31
- context,
32
- router: router$1,
33
- };
34
- };
35
9
 
36
- const testHook = (hookCallback, { providers, modules, initialState, store, stores, di, context = testMocks.createMockContext({ initialState, providers, modules, di, store, stores }), currentRoute, currentUrl, router: router$1 = testMocks.createMockRouter({ currentRoute, currentUrl }), renderOptions, } = {}) => {
37
- var _a;
38
- const Wrapper = (_a = renderOptions === null || renderOptions === void 0 ? void 0 : renderOptions.wrapper) !== null && _a !== void 0 ? _a : (({ children }) => children);
39
- const { result, rerender } = react.renderHook(hookCallback, {
40
- ...renderOptions,
41
- wrapper: ({ children }) => {
42
- return (jsxRuntime.jsx(state.Provider, { context: context, serverState: initialState, children: jsxRuntime.jsx(react$1.DIContext.Provider, { value: context.di, children: jsxRuntime.jsx(router.Provider, { router: router$1, serverState: initialState === null || initialState === void 0 ? void 0 : initialState.router, children: jsxRuntime.jsx(Wrapper, { children: children }) }) }) }));
43
- },
44
- });
45
- return {
46
- result,
47
- rerender,
48
- act: react.act,
49
- waitFor: react.waitFor,
50
- context,
51
- router: router$1,
52
- };
53
- };
54
10
 
55
- exports.testComponent = testComponent;
56
- exports.testHook = testHook;
11
+ exports.testComponent = testComponent.testComponent;
12
+ exports.testHook = testHook.testHook;
57
13
  Object.keys(react).forEach(function (k) {
58
- if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
59
- enumerable: true,
60
- get: function () { return react[k]; }
61
- });
14
+ if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
15
+ enumerable: true,
16
+ get: function () { return react[k]; }
17
+ });
62
18
  });
@@ -0,0 +1,32 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { render, act, screen, fireEvent } from '@testing-library/react';
3
+ import { Provider } from '@tramvai/state';
4
+ import { DIContext } from '@tramvai/react';
5
+ import { Provider as Provider$1 } from '@tinkoff/router';
6
+ import { createMockContext, createMockRouter } from '@tramvai/test-mocks';
7
+ import { waitRaf } from '@tramvai/test-jsdom';
8
+
9
+ const testComponent = (element, { providers, modules, initialState, store, stores, di, context = createMockContext({ initialState, providers, modules, di, store, stores }), currentRoute, currentUrl, router = createMockRouter({ currentRoute, currentUrl }), renderOptions, } = {}) => {
10
+ const Wrapper = ({ children }) => (jsx(Provider, { context: context, serverState: initialState, children: jsx(DIContext.Provider, { value: context.di, children: jsx(Provider$1, { router: router, serverState: initialState === null || initialState === void 0 ? void 0 : initialState.router, children: children }) }) }));
11
+ const renderResults = render(jsx(Wrapper, { children: element }), renderOptions);
12
+ return {
13
+ render: renderResults,
14
+ rerender: (el) => renderResults.rerender(jsx(Wrapper, { children: el })),
15
+ act: (callback) => {
16
+ return act(async () => {
17
+ await callback();
18
+ if (typeof window.requestAnimationFrame !== 'undefined') {
19
+ // as some of the state changes in browsers uses requestAnimationFrame to batch updates in single one
20
+ // but in tests requestAnimationFrame should mostly should be resolved manually
21
+ await waitRaf();
22
+ }
23
+ });
24
+ },
25
+ screen,
26
+ fireEvent,
27
+ context,
28
+ router,
29
+ };
30
+ };
31
+
32
+ export { testComponent };
@@ -0,0 +1,36 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var react = require('@testing-library/react');
7
+ var state = require('@tramvai/state');
8
+ var react$1 = require('@tramvai/react');
9
+ var router = require('@tinkoff/router');
10
+ var testMocks = require('@tramvai/test-mocks');
11
+ var testJsdom = require('@tramvai/test-jsdom');
12
+
13
+ const testComponent = (element, { providers, modules, initialState, store, stores, di, context = testMocks.createMockContext({ initialState, providers, modules, di, store, stores }), currentRoute, currentUrl, router: router$1 = testMocks.createMockRouter({ currentRoute, currentUrl }), renderOptions, } = {}) => {
14
+ const Wrapper = ({ children }) => (jsxRuntime.jsx(state.Provider, { context: context, serverState: initialState, children: jsxRuntime.jsx(react$1.DIContext.Provider, { value: context.di, children: jsxRuntime.jsx(router.Provider, { router: router$1, serverState: initialState === null || initialState === void 0 ? void 0 : initialState.router, children: children }) }) }));
15
+ const renderResults = react.render(jsxRuntime.jsx(Wrapper, { children: element }), renderOptions);
16
+ return {
17
+ render: renderResults,
18
+ rerender: (el) => renderResults.rerender(jsxRuntime.jsx(Wrapper, { children: el })),
19
+ act: (callback) => {
20
+ return react.act(async () => {
21
+ await callback();
22
+ if (typeof window.requestAnimationFrame !== 'undefined') {
23
+ // as some of the state changes in browsers uses requestAnimationFrame to batch updates in single one
24
+ // but in tests requestAnimationFrame should mostly should be resolved manually
25
+ await testJsdom.waitRaf();
26
+ }
27
+ });
28
+ },
29
+ screen: react.screen,
30
+ fireEvent: react.fireEvent,
31
+ context,
32
+ router: router$1,
33
+ };
34
+ };
35
+
36
+ exports.testComponent = testComponent;
@@ -0,0 +1,27 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { renderHook, act, waitFor } from '@testing-library/react';
3
+ import { Provider } from '@tramvai/state';
4
+ import { DIContext } from '@tramvai/react';
5
+ import { Provider as Provider$1 } from '@tinkoff/router';
6
+ import { createMockContext, createMockRouter } from '@tramvai/test-mocks';
7
+
8
+ const testHook = (hookCallback, { providers, modules, initialState, store, stores, di, context = createMockContext({ initialState, providers, modules, di, store, stores }), currentRoute, currentUrl, router = createMockRouter({ currentRoute, currentUrl }), renderOptions, } = {}) => {
9
+ var _a;
10
+ const Wrapper = (_a = renderOptions === null || renderOptions === void 0 ? void 0 : renderOptions.wrapper) !== null && _a !== void 0 ? _a : (({ children }) => children);
11
+ const { result, rerender } = renderHook(hookCallback, {
12
+ ...renderOptions,
13
+ wrapper: ({ children }) => {
14
+ return (jsx(Provider, { context: context, serverState: initialState, children: jsx(DIContext.Provider, { value: context.di, children: jsx(Provider$1, { router: router, serverState: initialState === null || initialState === void 0 ? void 0 : initialState.router, children: jsx(Wrapper, { children: children }) }) }) }));
15
+ },
16
+ });
17
+ return {
18
+ result,
19
+ rerender,
20
+ act,
21
+ waitFor,
22
+ context,
23
+ router,
24
+ };
25
+ };
26
+
27
+ export { testHook };
@@ -0,0 +1,31 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var react = require('@testing-library/react');
7
+ var state = require('@tramvai/state');
8
+ var react$1 = require('@tramvai/react');
9
+ var router = require('@tinkoff/router');
10
+ var testMocks = require('@tramvai/test-mocks');
11
+
12
+ const testHook = (hookCallback, { providers, modules, initialState, store, stores, di, context = testMocks.createMockContext({ initialState, providers, modules, di, store, stores }), currentRoute, currentUrl, router: router$1 = testMocks.createMockRouter({ currentRoute, currentUrl }), renderOptions, } = {}) => {
13
+ var _a;
14
+ const Wrapper = (_a = renderOptions === null || renderOptions === void 0 ? void 0 : renderOptions.wrapper) !== null && _a !== void 0 ? _a : (({ children }) => children);
15
+ const { result, rerender } = react.renderHook(hookCallback, {
16
+ ...renderOptions,
17
+ wrapper: ({ children }) => {
18
+ return (jsxRuntime.jsx(state.Provider, { context: context, serverState: initialState, children: jsxRuntime.jsx(react$1.DIContext.Provider, { value: context.di, children: jsxRuntime.jsx(router.Provider, { router: router$1, serverState: initialState === null || initialState === void 0 ? void 0 : initialState.router, children: jsxRuntime.jsx(Wrapper, { children: children }) }) }) }));
19
+ },
20
+ });
21
+ return {
22
+ result,
23
+ rerender,
24
+ act: react.act,
25
+ waitFor: react.waitFor,
26
+ context,
27
+ router: router$1,
28
+ };
29
+ };
30
+
31
+ exports.testHook = testHook;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tramvai/test-react",
3
- "version": "2.70.1",
3
+ "version": "2.72.0",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -13,18 +13,17 @@
13
13
  "url": "git@github.com:Tinkoff/tramvai.git"
14
14
  },
15
15
  "scripts": {
16
- "build": "tramvai-build --for-publish",
17
- "watch": "tsc -w",
18
- "build-for-publish": "true"
16
+ "build": "tramvai-build --forPublish --preserveModules",
17
+ "watch": "tsc -w"
19
18
  },
20
19
  "dependencies": {
21
20
  "@testing-library/react": "^13.3.0",
22
- "@tinkoff/router": "0.2.7",
23
- "@tramvai/react": "2.70.1",
24
- "@tramvai/state": "2.70.1",
25
- "@tramvai/test-jsdom": "2.70.1",
26
- "@tramvai/test-mocks": "2.70.1",
27
- "@tramvai/tokens-common": "2.70.1",
21
+ "@tinkoff/router": "0.2.8",
22
+ "@tramvai/react": "2.72.0",
23
+ "@tramvai/state": "2.72.0",
24
+ "@tramvai/test-jsdom": "2.72.0",
25
+ "@tramvai/test-mocks": "2.72.0",
26
+ "@tramvai/tokens-common": "2.72.0",
28
27
  "tslib": "^2.4.0"
29
28
  },
30
29
  "peerDependencies": {