@tramvai/test-mocks 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/CommonTestModule.es.js +81 -0
- package/lib/CommonTestModule.js +83 -0
- package/lib/appInfo.es.js +7 -0
- package/lib/appInfo.js +11 -0
- package/lib/cache.es.js +18 -0
- package/lib/cache.js +22 -0
- package/lib/context.es.js +62 -0
- package/lib/context.js +66 -0
- package/lib/cookie.es.js +19 -0
- package/lib/cookie.js +23 -0
- package/lib/di.es.js +25 -0
- package/lib/di.js +29 -0
- package/lib/envManager.es.js +14 -0
- package/lib/envManager.js +22 -0
- package/lib/index.es.js +11 -319
- package/lib/index.js +28 -334
- package/lib/logger.es.js +24 -0
- package/lib/logger.js +32 -0
- package/lib/requestManager.es.js +18 -0
- package/lib/requestManager.js +22 -0
- package/lib/router.es.js +51 -0
- package/lib/router.js +55 -0
- package/lib/store.es.js +32 -0
- package/lib/store.js +41 -0
- package/package.json +12 -13
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { __decorate } from 'tslib';
|
|
2
|
+
import { Module, provide, APP_INFO_TOKEN } from '@tramvai/core';
|
|
3
|
+
import { ENV_MANAGER_TOKEN, LOGGER_TOKEN, REQUEST_MANAGER_TOKEN, CREATE_CACHE_TOKEN, CONTEXT_TOKEN } from '@tramvai/tokens-common';
|
|
4
|
+
import { COOKIE_MANAGER_TOKEN } from '@tramvai/module-common';
|
|
5
|
+
import { createMockEnvManager } from './envManager.es.js';
|
|
6
|
+
import { createMockCookieManager } from './cookie.es.js';
|
|
7
|
+
import { createMockLogger } from './logger.es.js';
|
|
8
|
+
import { createMockAppInfo } from './appInfo.es.js';
|
|
9
|
+
import { createMockRequestManager } from './requestManager.es.js';
|
|
10
|
+
import { createMockCache } from './cache.es.js';
|
|
11
|
+
import { createMockContext } from './context.es.js';
|
|
12
|
+
|
|
13
|
+
var CommonTestModule_1;
|
|
14
|
+
let CommonTestModule = CommonTestModule_1 = class CommonTestModule {
|
|
15
|
+
static forRoot(options) {
|
|
16
|
+
const providers = [];
|
|
17
|
+
const { env, cookies, onCacheCreated } = options;
|
|
18
|
+
if (env) {
|
|
19
|
+
providers.push({
|
|
20
|
+
provide: ENV_MANAGER_TOKEN,
|
|
21
|
+
useValue: createMockEnvManager(env),
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
if (cookies) {
|
|
25
|
+
providers.push({
|
|
26
|
+
provide: COOKIE_MANAGER_TOKEN,
|
|
27
|
+
useValue: createMockCookieManager(cookies),
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
if (onCacheCreated) {
|
|
31
|
+
providers.push({
|
|
32
|
+
provide: CREATE_CACHE_TOKEN,
|
|
33
|
+
useValue: () => {
|
|
34
|
+
const cache = createMockCache();
|
|
35
|
+
onCacheCreated(cache);
|
|
36
|
+
return cache;
|
|
37
|
+
},
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
providers,
|
|
42
|
+
mainModule: CommonTestModule_1,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
CommonTestModule = CommonTestModule_1 = __decorate([
|
|
47
|
+
Module({
|
|
48
|
+
providers: [
|
|
49
|
+
provide({
|
|
50
|
+
provide: ENV_MANAGER_TOKEN,
|
|
51
|
+
useValue: createMockEnvManager(),
|
|
52
|
+
}),
|
|
53
|
+
provide({
|
|
54
|
+
provide: LOGGER_TOKEN,
|
|
55
|
+
useValue: createMockLogger(),
|
|
56
|
+
}),
|
|
57
|
+
provide({
|
|
58
|
+
provide: APP_INFO_TOKEN,
|
|
59
|
+
useValue: createMockAppInfo(),
|
|
60
|
+
}),
|
|
61
|
+
provide({
|
|
62
|
+
provide: REQUEST_MANAGER_TOKEN,
|
|
63
|
+
useValue: createMockRequestManager(),
|
|
64
|
+
}),
|
|
65
|
+
provide({
|
|
66
|
+
provide: CREATE_CACHE_TOKEN,
|
|
67
|
+
useValue: () => createMockCache(),
|
|
68
|
+
}),
|
|
69
|
+
provide({
|
|
70
|
+
provide: COOKIE_MANAGER_TOKEN,
|
|
71
|
+
useValue: createMockCookieManager(),
|
|
72
|
+
}),
|
|
73
|
+
provide({
|
|
74
|
+
provide: CONTEXT_TOKEN,
|
|
75
|
+
useValue: createMockContext(),
|
|
76
|
+
}),
|
|
77
|
+
],
|
|
78
|
+
})
|
|
79
|
+
], CommonTestModule);
|
|
80
|
+
|
|
81
|
+
export { CommonTestModule };
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var tslib = require('tslib');
|
|
6
|
+
var core = require('@tramvai/core');
|
|
7
|
+
var tokensCommon = require('@tramvai/tokens-common');
|
|
8
|
+
var moduleCommon = require('@tramvai/module-common');
|
|
9
|
+
var envManager = require('./envManager.js');
|
|
10
|
+
var cookie = require('./cookie.js');
|
|
11
|
+
var logger = require('./logger.js');
|
|
12
|
+
var appInfo = require('./appInfo.js');
|
|
13
|
+
var requestManager = require('./requestManager.js');
|
|
14
|
+
var cache = require('./cache.js');
|
|
15
|
+
var context = require('./context.js');
|
|
16
|
+
|
|
17
|
+
var CommonTestModule_1;
|
|
18
|
+
exports.CommonTestModule = CommonTestModule_1 = class CommonTestModule {
|
|
19
|
+
static forRoot(options) {
|
|
20
|
+
const providers = [];
|
|
21
|
+
const { env, cookies, onCacheCreated } = options;
|
|
22
|
+
if (env) {
|
|
23
|
+
providers.push({
|
|
24
|
+
provide: tokensCommon.ENV_MANAGER_TOKEN,
|
|
25
|
+
useValue: envManager.createMockEnvManager(env),
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
if (cookies) {
|
|
29
|
+
providers.push({
|
|
30
|
+
provide: moduleCommon.COOKIE_MANAGER_TOKEN,
|
|
31
|
+
useValue: cookie.createMockCookieManager(cookies),
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
if (onCacheCreated) {
|
|
35
|
+
providers.push({
|
|
36
|
+
provide: tokensCommon.CREATE_CACHE_TOKEN,
|
|
37
|
+
useValue: () => {
|
|
38
|
+
const cache$1 = cache.createMockCache();
|
|
39
|
+
onCacheCreated(cache$1);
|
|
40
|
+
return cache$1;
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
return {
|
|
45
|
+
providers,
|
|
46
|
+
mainModule: CommonTestModule_1,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
exports.CommonTestModule = CommonTestModule_1 = tslib.__decorate([
|
|
51
|
+
core.Module({
|
|
52
|
+
providers: [
|
|
53
|
+
core.provide({
|
|
54
|
+
provide: tokensCommon.ENV_MANAGER_TOKEN,
|
|
55
|
+
useValue: envManager.createMockEnvManager(),
|
|
56
|
+
}),
|
|
57
|
+
core.provide({
|
|
58
|
+
provide: tokensCommon.LOGGER_TOKEN,
|
|
59
|
+
useValue: logger.createMockLogger(),
|
|
60
|
+
}),
|
|
61
|
+
core.provide({
|
|
62
|
+
provide: core.APP_INFO_TOKEN,
|
|
63
|
+
useValue: appInfo.createMockAppInfo(),
|
|
64
|
+
}),
|
|
65
|
+
core.provide({
|
|
66
|
+
provide: tokensCommon.REQUEST_MANAGER_TOKEN,
|
|
67
|
+
useValue: requestManager.createMockRequestManager(),
|
|
68
|
+
}),
|
|
69
|
+
core.provide({
|
|
70
|
+
provide: tokensCommon.CREATE_CACHE_TOKEN,
|
|
71
|
+
useValue: () => cache.createMockCache(),
|
|
72
|
+
}),
|
|
73
|
+
core.provide({
|
|
74
|
+
provide: moduleCommon.COOKIE_MANAGER_TOKEN,
|
|
75
|
+
useValue: cookie.createMockCookieManager(),
|
|
76
|
+
}),
|
|
77
|
+
core.provide({
|
|
78
|
+
provide: tokensCommon.CONTEXT_TOKEN,
|
|
79
|
+
useValue: context.createMockContext(),
|
|
80
|
+
}),
|
|
81
|
+
],
|
|
82
|
+
})
|
|
83
|
+
], exports.CommonTestModule);
|
package/lib/appInfo.js
ADDED
package/lib/cache.es.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
const createMockCache = (entries = {}) => {
|
|
2
|
+
let cache = { ...entries };
|
|
3
|
+
return {
|
|
4
|
+
has: (key) => !!cache[key],
|
|
5
|
+
get: (key) => cache[key],
|
|
6
|
+
set: (key, value) => {
|
|
7
|
+
cache[key] = value;
|
|
8
|
+
},
|
|
9
|
+
clear: () => {
|
|
10
|
+
cache = {};
|
|
11
|
+
},
|
|
12
|
+
// TODO: в @tinkoff/request- используются методы из lru-cache которых нету в Cache
|
|
13
|
+
// @ts-ignore
|
|
14
|
+
peek: (key) => cache[key],
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export { createMockCache };
|
package/lib/cache.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const createMockCache = (entries = {}) => {
|
|
6
|
+
let cache = { ...entries };
|
|
7
|
+
return {
|
|
8
|
+
has: (key) => !!cache[key],
|
|
9
|
+
get: (key) => cache[key],
|
|
10
|
+
set: (key, value) => {
|
|
11
|
+
cache[key] = value;
|
|
12
|
+
},
|
|
13
|
+
clear: () => {
|
|
14
|
+
cache = {};
|
|
15
|
+
},
|
|
16
|
+
// TODO: в @tinkoff/request- используются методы из lru-cache которых нету в Cache
|
|
17
|
+
// @ts-ignore
|
|
18
|
+
peek: (key) => cache[key],
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
exports.createMockCache = createMockCache;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { STORE_TOKEN, ACTION_EXECUTION_TOKEN, ACTION_CONDITIONALS, EXECUTION_CONTEXT_MANAGER_TOKEN, CONTEXT_TOKEN } from '@tramvai/tokens-common';
|
|
2
|
+
import { alwaysCondition, onlyServer, onlyBrowser, pageServer, pageBrowser, ExecutionContextManager, ActionExecution, createConsumerContext } from '@tramvai/module-common';
|
|
3
|
+
import { PubSub } from '@tinkoff/pubsub';
|
|
4
|
+
import { DI_TOKEN } from '@tinkoff/dippy';
|
|
5
|
+
import { createMockStore } from './store.es.js';
|
|
6
|
+
import { createMockDi } from './di.es.js';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Создаёт мок для consumerContext
|
|
10
|
+
*
|
|
11
|
+
* @param stores - список сторов, которые будут переданы в createMockStore если явно не передавать store
|
|
12
|
+
* @param initialState - начальное состояние, которое будет передано в createMockStore если явно не передавать store
|
|
13
|
+
* @param store - глобальный стор приложения, по умолчанию используется результат createMockStore
|
|
14
|
+
* @param providers - список провайдеров, которые будут переданы в createMockDi если явно не передавать di
|
|
15
|
+
* @param modules - список модулей, провайдеры которых будут добавлены в создаваемый di-контейнер
|
|
16
|
+
* @param stores - di-контейнер, по умолчанию используется результат createMockDi
|
|
17
|
+
* @param useTramvaiActionsConditionals - добавляет встроенные в tramvai actions conditionals
|
|
18
|
+
*/
|
|
19
|
+
const createMockContext = ({ stores, initialState, store = createMockStore({ stores, initialState }), providers, modules, di = createMockDi({ providers, modules }), useTramvaiActionsConditionals = false, } = {}) => {
|
|
20
|
+
const { __dispatcherContext__: dispatcherContext } = store; // хак для получения уже созданного dispatcherContext в сторе
|
|
21
|
+
const pubsub = new PubSub();
|
|
22
|
+
di.register({
|
|
23
|
+
provide: STORE_TOKEN,
|
|
24
|
+
useValue: store,
|
|
25
|
+
});
|
|
26
|
+
if (!di.get({ token: ACTION_EXECUTION_TOKEN, optional: true })) {
|
|
27
|
+
if (useTramvaiActionsConditionals) {
|
|
28
|
+
di.register({
|
|
29
|
+
provide: ACTION_CONDITIONALS,
|
|
30
|
+
multi: true,
|
|
31
|
+
useValue: [alwaysCondition, onlyServer, onlyBrowser, pageServer, pageBrowser],
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
di.register({
|
|
35
|
+
provide: EXECUTION_CONTEXT_MANAGER_TOKEN,
|
|
36
|
+
useClass: ExecutionContextManager,
|
|
37
|
+
});
|
|
38
|
+
di.register({
|
|
39
|
+
provide: ACTION_EXECUTION_TOKEN,
|
|
40
|
+
useClass: ActionExecution,
|
|
41
|
+
deps: {
|
|
42
|
+
actionConditionals: { token: ACTION_CONDITIONALS, optional: true },
|
|
43
|
+
context: CONTEXT_TOKEN,
|
|
44
|
+
store: STORE_TOKEN,
|
|
45
|
+
di: DI_TOKEN,
|
|
46
|
+
transformAction: {
|
|
47
|
+
token: 'actionTransformAction',
|
|
48
|
+
optional: true,
|
|
49
|
+
},
|
|
50
|
+
executionContextManager: EXECUTION_CONTEXT_MANAGER_TOKEN,
|
|
51
|
+
},
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
const context = createConsumerContext({ store, pubsub, di, dispatcherContext });
|
|
55
|
+
di.register({
|
|
56
|
+
provide: CONTEXT_TOKEN,
|
|
57
|
+
useValue: context,
|
|
58
|
+
});
|
|
59
|
+
return context;
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
export { createMockContext };
|
package/lib/context.js
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var tokensCommon = require('@tramvai/tokens-common');
|
|
6
|
+
var moduleCommon = require('@tramvai/module-common');
|
|
7
|
+
var pubsub = require('@tinkoff/pubsub');
|
|
8
|
+
var dippy = require('@tinkoff/dippy');
|
|
9
|
+
var store = require('./store.js');
|
|
10
|
+
var di = require('./di.js');
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Создаёт мок для consumerContext
|
|
14
|
+
*
|
|
15
|
+
* @param stores - список сторов, которые будут переданы в createMockStore если явно не передавать store
|
|
16
|
+
* @param initialState - начальное состояние, которое будет передано в createMockStore если явно не передавать store
|
|
17
|
+
* @param store - глобальный стор приложения, по умолчанию используется результат createMockStore
|
|
18
|
+
* @param providers - список провайдеров, которые будут переданы в createMockDi если явно не передавать di
|
|
19
|
+
* @param modules - список модулей, провайдеры которых будут добавлены в создаваемый di-контейнер
|
|
20
|
+
* @param stores - di-контейнер, по умолчанию используется результат createMockDi
|
|
21
|
+
* @param useTramvaiActionsConditionals - добавляет встроенные в tramvai actions conditionals
|
|
22
|
+
*/
|
|
23
|
+
const createMockContext = ({ stores, initialState, store: store$1 = store.createMockStore({ stores, initialState }), providers, modules, di: di$1 = di.createMockDi({ providers, modules }), useTramvaiActionsConditionals = false, } = {}) => {
|
|
24
|
+
const { __dispatcherContext__: dispatcherContext } = store$1; // хак для получения уже созданного dispatcherContext в сторе
|
|
25
|
+
const pubsub$1 = new pubsub.PubSub();
|
|
26
|
+
di$1.register({
|
|
27
|
+
provide: tokensCommon.STORE_TOKEN,
|
|
28
|
+
useValue: store$1,
|
|
29
|
+
});
|
|
30
|
+
if (!di$1.get({ token: tokensCommon.ACTION_EXECUTION_TOKEN, optional: true })) {
|
|
31
|
+
if (useTramvaiActionsConditionals) {
|
|
32
|
+
di$1.register({
|
|
33
|
+
provide: tokensCommon.ACTION_CONDITIONALS,
|
|
34
|
+
multi: true,
|
|
35
|
+
useValue: [moduleCommon.alwaysCondition, moduleCommon.onlyServer, moduleCommon.onlyBrowser, moduleCommon.pageServer, moduleCommon.pageBrowser],
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
di$1.register({
|
|
39
|
+
provide: tokensCommon.EXECUTION_CONTEXT_MANAGER_TOKEN,
|
|
40
|
+
useClass: moduleCommon.ExecutionContextManager,
|
|
41
|
+
});
|
|
42
|
+
di$1.register({
|
|
43
|
+
provide: tokensCommon.ACTION_EXECUTION_TOKEN,
|
|
44
|
+
useClass: moduleCommon.ActionExecution,
|
|
45
|
+
deps: {
|
|
46
|
+
actionConditionals: { token: tokensCommon.ACTION_CONDITIONALS, optional: true },
|
|
47
|
+
context: tokensCommon.CONTEXT_TOKEN,
|
|
48
|
+
store: tokensCommon.STORE_TOKEN,
|
|
49
|
+
di: dippy.DI_TOKEN,
|
|
50
|
+
transformAction: {
|
|
51
|
+
token: 'actionTransformAction',
|
|
52
|
+
optional: true,
|
|
53
|
+
},
|
|
54
|
+
executionContextManager: tokensCommon.EXECUTION_CONTEXT_MANAGER_TOKEN,
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
const context = moduleCommon.createConsumerContext({ store: store$1, pubsub: pubsub$1, di: di$1, dispatcherContext });
|
|
59
|
+
di$1.register({
|
|
60
|
+
provide: tokensCommon.CONTEXT_TOKEN,
|
|
61
|
+
useValue: context,
|
|
62
|
+
});
|
|
63
|
+
return context;
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
exports.createMockContext = createMockContext;
|
package/lib/cookie.es.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
const createMockCookieManager = (entries = {}) => {
|
|
2
|
+
const cookies = { ...entries };
|
|
3
|
+
return {
|
|
4
|
+
get(name) {
|
|
5
|
+
return cookies[name];
|
|
6
|
+
},
|
|
7
|
+
set({ name, value }) {
|
|
8
|
+
cookies[name] = value;
|
|
9
|
+
},
|
|
10
|
+
all() {
|
|
11
|
+
return cookies;
|
|
12
|
+
},
|
|
13
|
+
remove(name) {
|
|
14
|
+
delete cookies[name];
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export { createMockCookieManager };
|
package/lib/cookie.js
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const createMockCookieManager = (entries = {}) => {
|
|
6
|
+
const cookies = { ...entries };
|
|
7
|
+
return {
|
|
8
|
+
get(name) {
|
|
9
|
+
return cookies[name];
|
|
10
|
+
},
|
|
11
|
+
set({ name, value }) {
|
|
12
|
+
cookies[name] = value;
|
|
13
|
+
},
|
|
14
|
+
all() {
|
|
15
|
+
return cookies;
|
|
16
|
+
},
|
|
17
|
+
remove(name) {
|
|
18
|
+
delete cookies[name];
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
exports.createMockCookieManager = createMockCookieManager;
|
package/lib/di.es.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { createContainer } from '@tinkoff/dippy';
|
|
2
|
+
import { walkOfModules, getModuleParameters } from '@tramvai/core';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Создаёт di-сontainer
|
|
6
|
+
*
|
|
7
|
+
* @param modules - список модулей, провайдеры которых будут добавлены в создаваемый di-контейнер
|
|
8
|
+
* @param providers - список провайдеров, которые будут добавлены в создаваемый di-контейнер
|
|
9
|
+
*/
|
|
10
|
+
const createMockDi = ({ modules = [], providers = [] } = {}) => {
|
|
11
|
+
const di = createContainer();
|
|
12
|
+
const resolvedModules = walkOfModules(modules);
|
|
13
|
+
resolvedModules.forEach((mod) => {
|
|
14
|
+
const moduleParameters = getModuleParameters(mod);
|
|
15
|
+
moduleParameters.providers.forEach((provider) => {
|
|
16
|
+
di.register(provider);
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
if (providers) {
|
|
20
|
+
providers.forEach((provider) => di.register(provider));
|
|
21
|
+
}
|
|
22
|
+
return di;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export { createMockDi };
|
package/lib/di.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var dippy = require('@tinkoff/dippy');
|
|
6
|
+
var core = require('@tramvai/core');
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Создаёт di-сontainer
|
|
10
|
+
*
|
|
11
|
+
* @param modules - список модулей, провайдеры которых будут добавлены в создаваемый di-контейнер
|
|
12
|
+
* @param providers - список провайдеров, которые будут добавлены в создаваемый di-контейнер
|
|
13
|
+
*/
|
|
14
|
+
const createMockDi = ({ modules = [], providers = [] } = {}) => {
|
|
15
|
+
const di = dippy.createContainer();
|
|
16
|
+
const resolvedModules = core.walkOfModules(modules);
|
|
17
|
+
resolvedModules.forEach((mod) => {
|
|
18
|
+
const moduleParameters = core.getModuleParameters(mod);
|
|
19
|
+
moduleParameters.providers.forEach((provider) => {
|
|
20
|
+
di.register(provider);
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
if (providers) {
|
|
24
|
+
providers.forEach((provider) => di.register(provider));
|
|
25
|
+
}
|
|
26
|
+
return di;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
exports.createMockDi = createMockDi;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import noop from '@tinkoff/utils/function/noop';
|
|
2
|
+
|
|
3
|
+
const createMockEnvManager = (env = {}) => {
|
|
4
|
+
return {
|
|
5
|
+
get: (name) => env[name],
|
|
6
|
+
getInt: (name, def) => { var _a; return (_a = parseInt(env[name], 10)) !== null && _a !== void 0 ? _a : def; },
|
|
7
|
+
getAll: () => env,
|
|
8
|
+
update: noop,
|
|
9
|
+
clientUsed: () => env,
|
|
10
|
+
updateClientUsed: noop,
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export { createMockEnvManager };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var noop = require('@tinkoff/utils/function/noop');
|
|
6
|
+
|
|
7
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
|
+
|
|
9
|
+
var noop__default = /*#__PURE__*/_interopDefaultLegacy(noop);
|
|
10
|
+
|
|
11
|
+
const createMockEnvManager = (env = {}) => {
|
|
12
|
+
return {
|
|
13
|
+
get: (name) => env[name],
|
|
14
|
+
getInt: (name, def) => { var _a; return (_a = parseInt(env[name], 10)) !== null && _a !== void 0 ? _a : def; },
|
|
15
|
+
getAll: () => env,
|
|
16
|
+
update: noop__default["default"],
|
|
17
|
+
clientUsed: () => env,
|
|
18
|
+
updateClientUsed: noop__default["default"],
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
exports.createMockEnvManager = createMockEnvManager;
|