@teambit/dependency-resolver 1.0.684 → 1.0.686
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/dependency-resolver.main.runtime.spec.js +64 -63
- package/dist/dependency-resolver.main.runtime.spec.js.map +1 -1
- package/dist/manifest/update-dependency-version.spec.js +25 -6
- package/dist/manifest/update-dependency-version.spec.js.map +1 -1
- package/dist/{preview-1754416285019.js → preview-1754439340204.js} +2 -2
- package/manifest/update-dependency-version.spec.ts +14 -7
- package/package.json +12 -11
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function _chai() {
|
|
4
|
+
const data = require("chai");
|
|
5
|
+
_chai = function () {
|
|
6
|
+
return data;
|
|
7
|
+
};
|
|
8
|
+
return data;
|
|
9
|
+
}
|
|
10
|
+
function _sinon() {
|
|
11
|
+
const data = _interopRequireDefault(require("sinon"));
|
|
12
|
+
_sinon = function () {
|
|
13
|
+
return data;
|
|
14
|
+
};
|
|
15
|
+
return data;
|
|
16
|
+
}
|
|
3
17
|
function _component() {
|
|
4
18
|
const data = require("@teambit/component");
|
|
5
19
|
_component = function () {
|
|
@@ -29,28 +43,25 @@ function _dependencyResolverMain() {
|
|
|
29
43
|
return data;
|
|
30
44
|
}
|
|
31
45
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
32
|
-
// @ts-ignore
|
|
33
|
-
jest.mock('@teambit/scope.network', () => ({
|
|
34
|
-
Http: {
|
|
35
|
-
// @ts-ignore
|
|
36
|
-
getNetworkConfig: jest.fn(),
|
|
37
|
-
// @ts-ignore
|
|
38
|
-
getProxyConfig: jest.fn()
|
|
39
|
-
}
|
|
40
|
-
}));
|
|
41
|
-
|
|
42
46
|
/* eslint-disable import/first */
|
|
43
47
|
|
|
44
48
|
const logger = {
|
|
45
49
|
debug: () => {}
|
|
46
50
|
};
|
|
47
51
|
describe('DepenendencyResolverMain.getNetworkConfig()', () => {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
let httpStub;
|
|
53
|
+
let packageManagerSlot;
|
|
54
|
+
beforeEach(() => {
|
|
55
|
+
httpStub = _sinon().default.stub(_scope().Http, 'getNetworkConfig');
|
|
56
|
+
packageManagerSlot = {
|
|
57
|
+
get: _sinon().default.stub().returns({
|
|
58
|
+
getNetworkConfig: () => ({})
|
|
59
|
+
})
|
|
60
|
+
};
|
|
61
|
+
});
|
|
62
|
+
afterEach(() => {
|
|
63
|
+
_sinon().default.restore();
|
|
64
|
+
});
|
|
54
65
|
it('should return settings from global config', async () => {
|
|
55
66
|
const depResolver = new (_dependencyResolverMain().DependencyResolverMain)({}, {}, {}, {}, logger, {}, {}, {}, {}, packageManagerSlot, {}, {}, {}, {});
|
|
56
67
|
const globalConfig = {
|
|
@@ -62,9 +73,8 @@ describe('DepenendencyResolverMain.getNetworkConfig()', () => {
|
|
|
62
73
|
networkConcurrency: 6,
|
|
63
74
|
maxSockets: 7
|
|
64
75
|
};
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
expect(await depResolver.getNetworkConfig()).toEqual(globalConfig);
|
|
76
|
+
httpStub.resolves(globalConfig);
|
|
77
|
+
(0, _chai().expect)(await depResolver.getNetworkConfig()).to.deep.equal(globalConfig);
|
|
68
78
|
});
|
|
69
79
|
it('should return settings from package manager config', async () => {
|
|
70
80
|
const depResolver = new (_dependencyResolverMain().DependencyResolverMain)({}, {}, {}, {}, logger, {}, {}, {}, {}, packageManagerSlot, {}, {}, {}, {});
|
|
@@ -77,12 +87,11 @@ describe('DepenendencyResolverMain.getNetworkConfig()', () => {
|
|
|
77
87
|
networkConcurrency: 66,
|
|
78
88
|
maxSockets: 77
|
|
79
89
|
};
|
|
80
|
-
packageManagerSlot.get.
|
|
90
|
+
packageManagerSlot.get.returns({
|
|
81
91
|
getNetworkConfig: () => pmConfig
|
|
82
92
|
});
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
expect(await depResolver.getNetworkConfig()).toEqual(pmConfig);
|
|
93
|
+
httpStub.resolves({});
|
|
94
|
+
(0, _chai().expect)(await depResolver.getNetworkConfig()).to.deep.equal(pmConfig);
|
|
86
95
|
});
|
|
87
96
|
it('should return settings from aspect config', async () => {
|
|
88
97
|
const config = {
|
|
@@ -94,10 +103,9 @@ describe('DepenendencyResolverMain.getNetworkConfig()', () => {
|
|
|
94
103
|
networkConcurrency: 666,
|
|
95
104
|
maxSockets: 777
|
|
96
105
|
};
|
|
97
|
-
|
|
98
|
-
_scope().Http.getNetworkConfig.mockReturnValue(Promise.resolve({}));
|
|
106
|
+
httpStub.resolves({});
|
|
99
107
|
const depResolver = new (_dependencyResolverMain().DependencyResolverMain)(config, {}, {}, {}, logger, {}, {}, {}, {}, packageManagerSlot, {}, {}, {}, {});
|
|
100
|
-
expect(await depResolver.getNetworkConfig()).
|
|
108
|
+
(0, _chai().expect)(await depResolver.getNetworkConfig()).to.deep.equal(config);
|
|
101
109
|
});
|
|
102
110
|
it('should merge settings from global config, package manager config, and aspect config', async () => {
|
|
103
111
|
const globalConfig = {
|
|
@@ -113,13 +121,12 @@ describe('DepenendencyResolverMain.getNetworkConfig()', () => {
|
|
|
113
121
|
networkConcurrency: 666,
|
|
114
122
|
maxSockets: 777
|
|
115
123
|
};
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
packageManagerSlot.get.mockReturnValue({
|
|
124
|
+
httpStub.resolves(globalConfig);
|
|
125
|
+
packageManagerSlot.get.returns({
|
|
119
126
|
getNetworkConfig: () => pmConfig
|
|
120
127
|
});
|
|
121
128
|
const depResolver = new (_dependencyResolverMain().DependencyResolverMain)(config, {}, {}, {}, logger, {}, {}, {}, {}, packageManagerSlot, {}, {}, {}, {});
|
|
122
|
-
expect(await depResolver.getNetworkConfig()).
|
|
129
|
+
(0, _chai().expect)(await depResolver.getNetworkConfig()).to.deep.equal({
|
|
123
130
|
fetchTimeout: 1,
|
|
124
131
|
fetchRetries: 2,
|
|
125
132
|
fetchRetryFactor: 33,
|
|
@@ -131,14 +138,12 @@ describe('DepenendencyResolverMain.getNetworkConfig()', () => {
|
|
|
131
138
|
});
|
|
132
139
|
it('should read cafile when it is returned by the global config', async () => {
|
|
133
140
|
const depResolver = new (_dependencyResolverMain().DependencyResolverMain)({}, {}, {}, {}, {
|
|
134
|
-
debug:
|
|
141
|
+
debug: _sinon().default.stub()
|
|
135
142
|
}, {}, {}, {}, {}, packageManagerSlot, {}, {}, {}, {});
|
|
136
|
-
|
|
137
|
-
_scope().Http.getNetworkConfig.mockReturnValue(Promise.resolve({
|
|
143
|
+
httpStub.resolves({
|
|
138
144
|
cafile: _path().default.join(__dirname, 'fixtures/cafile.txt')
|
|
139
|
-
})
|
|
140
|
-
|
|
141
|
-
expect((await depResolver.getNetworkConfig()).ca).toStrictEqual([`-----BEGIN CERTIFICATE-----
|
|
145
|
+
});
|
|
146
|
+
(0, _chai().expect)((await depResolver.getNetworkConfig()).ca).to.deep.equal([`-----BEGIN CERTIFICATE-----
|
|
142
147
|
XXXX
|
|
143
148
|
-----END CERTIFICATE-----`]);
|
|
144
149
|
});
|
|
@@ -146,7 +151,6 @@ XXXX
|
|
|
146
151
|
describe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {
|
|
147
152
|
function createDependencyResolverMain(resolveRemoteVersion, policy) {
|
|
148
153
|
const packageManagerSlot = {
|
|
149
|
-
// @ts-ignore
|
|
150
154
|
get: () => ({
|
|
151
155
|
resolveRemoteVersion,
|
|
152
156
|
getNetworkConfig: () => ({})
|
|
@@ -155,12 +159,9 @@ describe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {
|
|
|
155
159
|
return new (_dependencyResolverMain().DependencyResolverMain)({
|
|
156
160
|
policy
|
|
157
161
|
}, {}, {}, {}, {
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
setStatusLine: jest.fn(),
|
|
162
|
-
// @ts-ignore
|
|
163
|
-
consoleSuccess: jest.fn()
|
|
162
|
+
debug: _sinon().default.stub(),
|
|
163
|
+
setStatusLine: _sinon().default.stub(),
|
|
164
|
+
consoleSuccess: _sinon().default.stub()
|
|
164
165
|
}, {}, {}, {
|
|
165
166
|
getConfig: () => false
|
|
166
167
|
}, {}, packageManagerSlot, {}, {}, {}, {});
|
|
@@ -245,8 +246,7 @@ describe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {
|
|
|
245
246
|
}],
|
|
246
247
|
components: []
|
|
247
248
|
});
|
|
248
|
-
|
|
249
|
-
expect(outdatedPkgs).toStrictEqual([{
|
|
249
|
+
(0, _chai().expect)(outdatedPkgs).to.deep.equal([{
|
|
250
250
|
currentRange: '1.0.0',
|
|
251
251
|
latestRange: '2.0.0',
|
|
252
252
|
name: 'root-runtime-dep1',
|
|
@@ -337,8 +337,7 @@ describe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {
|
|
|
337
337
|
components: [],
|
|
338
338
|
forceVersionBump: 'patch'
|
|
339
339
|
});
|
|
340
|
-
|
|
341
|
-
expect(outdatedPkgs).toStrictEqual([{
|
|
340
|
+
(0, _chai().expect)(outdatedPkgs).to.deep.equal([{
|
|
342
341
|
currentRange: '0.0.1',
|
|
343
342
|
latestRange: '0.0.2',
|
|
344
343
|
name: 'dep1',
|
|
@@ -355,8 +354,7 @@ describe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {
|
|
|
355
354
|
components: [],
|
|
356
355
|
forceVersionBump: 'minor'
|
|
357
356
|
});
|
|
358
|
-
|
|
359
|
-
expect(outdatedPkgs).toStrictEqual([{
|
|
357
|
+
(0, _chai().expect)(outdatedPkgs).to.deep.equal([{
|
|
360
358
|
currentRange: '0.0.1',
|
|
361
359
|
latestRange: '0.0.2',
|
|
362
360
|
name: 'dep1',
|
|
@@ -380,8 +378,7 @@ describe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {
|
|
|
380
378
|
components: [],
|
|
381
379
|
forceVersionBump: 'major'
|
|
382
380
|
});
|
|
383
|
-
|
|
384
|
-
expect(outdatedPkgs).toStrictEqual([{
|
|
381
|
+
(0, _chai().expect)(outdatedPkgs).to.deep.equal([{
|
|
385
382
|
currentRange: '0.0.1',
|
|
386
383
|
latestRange: '0.0.2',
|
|
387
384
|
name: 'dep1',
|
|
@@ -411,18 +408,22 @@ describe('DepenendencyResolverMain.getComponentEnvPolicyFromEnv()', () => {
|
|
|
411
408
|
const depResolver = new (_dependencyResolverMain().DependencyResolverMain)({}, {}, {}, {
|
|
412
409
|
isCoreEnv: () => false
|
|
413
410
|
}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {});
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
411
|
+
try {
|
|
412
|
+
await depResolver.getComponentEnvPolicyFromEnv({
|
|
413
|
+
getDependencies: () => ({
|
|
414
|
+
peers: [{
|
|
415
|
+
name: '@teambit/community.ui.bit-cli.commands-provider',
|
|
416
|
+
supportedRange: '',
|
|
417
|
+
version: ''
|
|
418
|
+
}]
|
|
419
|
+
})
|
|
420
|
+
}, {
|
|
421
|
+
envId: 'teambit.test/test'
|
|
422
|
+
});
|
|
423
|
+
_chai().expect.fail('Expected method to throw');
|
|
424
|
+
} catch (error) {
|
|
425
|
+
(0, _chai().expect)(error.message).to.equal('Peer "@teambit/community.ui.bit-cli.commands-provider" has an empty supportedRange');
|
|
426
|
+
}
|
|
426
427
|
});
|
|
427
428
|
});
|
|
428
429
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_component","data","require","_path","_interopRequireDefault","_scope","_dependencyResolverMain","e","__esModule","default","jest","mock","Http","getNetworkConfig","fn","getProxyConfig","logger","debug","describe","packageManagerSlot","get","it","depResolver","DependencyResolverMain","globalConfig","fetchTimeout","fetchRetries","fetchRetryFactor","fetchRetryMintimeout","fetchRetryMaxtimeout","networkConcurrency","maxSockets","mockReturnValue","Promise","resolve","expect","toEqual","pmConfig","config","cafile","path","join","__dirname","ca","toStrictEqual","createDependencyResolverMain","resolveRemoteVersion","policy","setStatusLine","consoleSuccess","getConfig","spec","Error","version","dependencies","peerDependencies","outdatedPkgs","getOutdatedPkgsFromPolicies","rootDir","variantPoliciesByPatterns","devDependencies","componentPolicies","componentId","ComponentID","fromString","components","currentRange","latestRange","name","source","variantPattern","targetField","dep1","dep2","dep3","forceVersionBump","isCoreEnv","getComponentEnvPolicyFromEnv","getDependencies","peers","supportedRange","envId","rejects","toThrowError"],"sources":["dependency-resolver.main.runtime.spec.ts"],"sourcesContent":["// @ts-ignore\njest.mock('@teambit/scope.network', () => ({\n Http: {\n // @ts-ignore\n getNetworkConfig: jest.fn(),\n // @ts-ignore\n getProxyConfig: jest.fn(),\n },\n}));\n\n/* eslint-disable import/first */\nimport { ComponentID } from '@teambit/component';\nimport path from 'path';\nimport { Http } from '@teambit/scope.network';\nimport { DependencyResolverMain } from './dependency-resolver.main.runtime';\n\nconst logger = {\n debug: () => {},\n};\n\ndescribe('DepenendencyResolverMain.getNetworkConfig()', () => {\n const packageManagerSlot = {\n // @ts-ignore\n get: jest.fn(() => ({\n getNetworkConfig: () => ({}),\n })),\n };\n it('should return settings from global config', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n const globalConfig = {\n fetchTimeout: 1,\n fetchRetries: 2,\n fetchRetryFactor: 3,\n fetchRetryMintimeout: 4,\n fetchRetryMaxtimeout: 5,\n networkConcurrency: 6,\n maxSockets: 7,\n };\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(Promise.resolve(globalConfig));\n expect(await depResolver.getNetworkConfig()).toEqual(globalConfig);\n });\n it('should return settings from package manager config', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n const pmConfig = {\n fetchTimeout: 11,\n fetchRetries: 22,\n fetchRetryFactor: 33,\n fetchRetryMintimeout: 44,\n fetchRetryMaxtimeout: 55,\n networkConcurrency: 66,\n maxSockets: 77,\n };\n packageManagerSlot.get.mockReturnValue({\n getNetworkConfig: () => pmConfig,\n });\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(Promise.resolve({}));\n expect(await depResolver.getNetworkConfig()).toEqual(pmConfig);\n });\n it('should return settings from aspect config', async () => {\n const config = {\n fetchTimeout: 111,\n fetchRetries: 222,\n fetchRetryFactor: 333,\n fetchRetryMintimeout: 444,\n fetchRetryMaxtimeout: 555,\n networkConcurrency: 666,\n maxSockets: 777,\n } as any;\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(Promise.resolve({}));\n const depResolver = new DependencyResolverMain(\n config,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n expect(await depResolver.getNetworkConfig()).toEqual(config);\n });\n it('should merge settings from global config, package manager config, and aspect config', async () => {\n const globalConfig = {\n fetchTimeout: 1,\n fetchRetries: 2,\n };\n const pmConfig = {\n fetchRetryFactor: 33,\n fetchRetryMintimeout: 44,\n };\n const config = {\n fetchRetryMaxtimeout: 555,\n networkConcurrency: 666,\n maxSockets: 777,\n } as any;\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(Promise.resolve(globalConfig));\n packageManagerSlot.get.mockReturnValue({\n getNetworkConfig: () => pmConfig,\n });\n const depResolver = new DependencyResolverMain(\n config,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n expect(await depResolver.getNetworkConfig()).toEqual({\n fetchTimeout: 1,\n fetchRetries: 2,\n fetchRetryFactor: 33,\n fetchRetryMintimeout: 44,\n fetchRetryMaxtimeout: 555,\n networkConcurrency: 666,\n maxSockets: 777,\n });\n });\n it('should read cafile when it is returned by the global config', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n { debug: jest.fn() } as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(\n Promise.resolve({\n cafile: path.join(__dirname, 'fixtures/cafile.txt'),\n })\n );\n // @ts-ignore\n expect((await depResolver.getNetworkConfig()).ca).toStrictEqual([\n `-----BEGIN CERTIFICATE-----\nXXXX\n-----END CERTIFICATE-----`,\n ]);\n });\n});\n\ndescribe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {\n function createDependencyResolverMain(\n resolveRemoteVersion: (spec: string) => { version: string | undefined },\n policy: any\n ) {\n const packageManagerSlot = {\n // @ts-ignore\n get: () => ({\n resolveRemoteVersion,\n getNetworkConfig: () => ({}),\n }),\n };\n return new DependencyResolverMain(\n { policy } as any,\n {} as any,\n {} as any,\n {} as any,\n {\n // @ts-ignore\n debug: jest.fn(),\n // @ts-ignore\n setStatusLine: jest.fn(),\n // @ts-ignore\n consoleSuccess: jest.fn(),\n } as any,\n {} as any,\n {} as any,\n {\n getConfig: () => false,\n } as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n }\n describe('without options', () => {\n function resolveRemoteVersion(spec: string): { version: string | undefined } {\n if (spec === 'cannot-resolve@latest') throw new Error('Cannot resolve latest');\n return {\n version: {\n 'root-runtime-dep1@latest': '2.0.0',\n 'root-peer-dep1@latest': '2.0.0',\n 'variant1-runtime-dep1@latest': '2.0.0',\n 'variant1-runtime-dep3@latest': '2.0.0',\n 'variant1-dev-dep1@latest': '2.0.0',\n 'variant1-dev-dep3@latest': '2.0.0',\n 'variant1-peer-dep1@latest': '2.0.0',\n 'variant1-peer-dep3@latest': '2.0.0',\n 'component1-runtime-dep1@latest': '2.0.0',\n 'component1-runtime-dep3@latest': '2.0.0',\n 'component1-dev-dep1@latest': '2.0.0',\n 'component1-dev-dep3@latest': '2.0.0',\n 'component1-peer-dep1@latest': '2.0.0',\n 'component1-peer-dep3@latest': '2.0.0',\n 'pkg-with-old-latest@latest': '0.0.0',\n }[spec],\n };\n }\n const policy = {\n dependencies: {\n 'root-runtime-dep1': '1.0.0',\n 'root-runtime-dep2': '1.0.0',\n },\n peerDependencies: {\n 'root-peer-dep1': '1.0.0',\n 'root-peer-dep2': '1.0.0',\n },\n };\n const depResolver = createDependencyResolverMain(resolveRemoteVersion, policy);\n it('should return outdated dependencies', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {\n '{variant1/*}': {\n dependencies: {\n 'variant1-runtime-dep1': '1.0.0',\n 'variant1-runtime-dep2': '1.0.0',\n 'variant1-runtime-dep3': '-',\n },\n devDependencies: {\n 'variant1-dev-dep1': '1.0.0',\n 'variant1-dev-dep2': '1.0.0',\n 'variant1-dev-dep3': '-',\n },\n peerDependencies: {\n 'variant1-peer-dep1': '1.0.0',\n 'variant1-peer-dep2': '1.0.0',\n 'variant1-peer-dep3': '-',\n },\n },\n },\n componentPolicies: [\n {\n componentId: ComponentID.fromString('scope/component1'),\n policy: {\n dependencies: {\n 'pkg-with-old-latest': '1.0.0',\n 'cannot-resolve': '1.0.0',\n 'component1-runtime-dep1': '1.0.0',\n 'component1-runtime-dep2': '1.0.0',\n 'component1-runtime-dep3': '-',\n },\n devDependencies: {\n 'component1-dev-dep1': '1.0.0',\n 'component1-dev-dep2': '1.0.0',\n 'component1-dev-dep3': '-',\n },\n peerDependencies: {\n 'component1-peer-dep1': '1.0.0',\n 'component1-peer-dep2': '1.0.0',\n 'component1-peer-dep3': '-',\n },\n },\n },\n ],\n components: [],\n });\n // @ts-ignore\n expect(outdatedPkgs).toStrictEqual([\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'root-runtime-dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'root-peer-dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'peerDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'variant1-runtime-dep1',\n source: 'variants',\n variantPattern: '{variant1/*}',\n targetField: 'dependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'variant1-dev-dep1',\n source: 'variants',\n variantPattern: '{variant1/*}',\n targetField: 'devDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'variant1-peer-dep1',\n source: 'variants',\n variantPattern: '{variant1/*}',\n targetField: 'peerDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'component1-runtime-dep1',\n source: 'component',\n componentId: ComponentID.fromString('scope/component1'),\n targetField: 'dependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'component1-dev-dep1',\n source: 'component',\n componentId: ComponentID.fromString('scope/component1'),\n targetField: 'devDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'component1-peer-dep1',\n source: 'component',\n componentId: ComponentID.fromString('scope/component1'),\n targetField: 'peerDependencies',\n },\n ]);\n });\n });\n describe('forced version bump', () => {\n function resolveRemoteVersion(spec: string): { version: string | undefined } {\n return {\n version: {\n 'dep1@>=0.0.1 <0.1.0': '0.0.2',\n 'dep1@>=0.0.1 <1.0.0': '0.0.2',\n 'dep1@latest': '0.0.2',\n\n 'dep2@>=0.1.0 <0.2.0': '0.1.0',\n 'dep2@>=0.1.0 <1.0.0': '0.2.0',\n 'dep2@latest': '0.2.0',\n\n 'dep3@>=1.0.0 <1.1.0': '1.0.0',\n 'dep3@>=1.0.0 <2.0.0': '1.0.0',\n 'dep3@latest': '2.0.0',\n }[spec],\n };\n }\n const policy = {\n dependencies: {\n dep1: '0.0.1',\n dep2: '^0.1.0',\n dep3: '^1.0.0',\n },\n };\n const depResolver = createDependencyResolverMain(resolveRemoteVersion, policy);\n it('should return outdated dependencies when forcedVersionBump is set to patch', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {},\n componentPolicies: [],\n components: [],\n forceVersionBump: 'patch',\n });\n // @ts-ignore\n expect(outdatedPkgs).toStrictEqual([\n {\n currentRange: '0.0.1',\n latestRange: '0.0.2',\n name: 'dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n ]);\n });\n it('should return outdated dependencies when forcedVersionBump is set to minor', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {},\n componentPolicies: [],\n components: [],\n forceVersionBump: 'minor',\n });\n // @ts-ignore\n expect(outdatedPkgs).toStrictEqual([\n {\n currentRange: '0.0.1',\n latestRange: '0.0.2',\n name: 'dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '^0.1.0',\n latestRange: '^0.2.0',\n name: 'dep2',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n ]);\n });\n it('should return outdated dependencies when forcedVersionBump is set to major', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {},\n componentPolicies: [],\n components: [],\n forceVersionBump: 'major',\n });\n // @ts-ignore\n expect(outdatedPkgs).toStrictEqual([\n {\n currentRange: '0.0.1',\n latestRange: '0.0.2',\n name: 'dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '^0.1.0',\n latestRange: '^0.2.0',\n name: 'dep2',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '^1.0.0',\n latestRange: '^2.0.0',\n name: 'dep3',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n ]);\n });\n });\n});\n\ndescribe('DepenendencyResolverMain.getComponentEnvPolicyFromEnv()', () => {\n it('should throw an error if the env policy has a peer with an empty string set for the supportedRange', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {\n isCoreEnv: () => false,\n } as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n await expect(\n depResolver.getComponentEnvPolicyFromEnv(\n {\n getDependencies: () => ({\n peers: [\n {\n name: '@teambit/community.ui.bit-cli.commands-provider',\n supportedRange: '',\n version: '',\n },\n ],\n }),\n },\n { envId: 'teambit.test/test' }\n ) // @ts-ignore\n ).rejects.toThrowError('Peer \"@teambit/community.ui.bit-cli.commands-provider\" has an empty supportedRange');\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_chai","data","require","_sinon","_interopRequireDefault","_component","_path","_scope","_dependencyResolverMain","e","__esModule","default","logger","debug","describe","httpStub","packageManagerSlot","beforeEach","sinon","stub","Http","get","returns","getNetworkConfig","afterEach","restore","it","depResolver","DependencyResolverMain","globalConfig","fetchTimeout","fetchRetries","fetchRetryFactor","fetchRetryMintimeout","fetchRetryMaxtimeout","networkConcurrency","maxSockets","resolves","expect","to","deep","equal","pmConfig","config","cafile","path","join","__dirname","ca","createDependencyResolverMain","resolveRemoteVersion","policy","setStatusLine","consoleSuccess","getConfig","spec","Error","version","dependencies","peerDependencies","outdatedPkgs","getOutdatedPkgsFromPolicies","rootDir","variantPoliciesByPatterns","devDependencies","componentPolicies","componentId","ComponentID","fromString","components","currentRange","latestRange","name","source","variantPattern","targetField","dep1","dep2","dep3","forceVersionBump","isCoreEnv","getComponentEnvPolicyFromEnv","getDependencies","peers","supportedRange","envId","fail","error","message"],"sources":["dependency-resolver.main.runtime.spec.ts"],"sourcesContent":["/* eslint-disable import/first */\nimport { expect } from 'chai';\nimport sinon from 'sinon';\nimport { ComponentID } from '@teambit/component';\nimport path from 'path';\nimport { Http } from '@teambit/scope.network';\nimport { DependencyResolverMain } from './dependency-resolver.main.runtime';\n\nconst logger = {\n debug: () => {},\n};\n\ndescribe('DepenendencyResolverMain.getNetworkConfig()', () => {\n let httpStub: sinon.SinonStub;\n let packageManagerSlot: any;\n\n beforeEach(() => {\n httpStub = sinon.stub(Http, 'getNetworkConfig');\n packageManagerSlot = {\n get: sinon.stub().returns({\n getNetworkConfig: () => ({}),\n }),\n };\n });\n\n afterEach(() => {\n sinon.restore();\n });\n it('should return settings from global config', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n const globalConfig = {\n fetchTimeout: 1,\n fetchRetries: 2,\n fetchRetryFactor: 3,\n fetchRetryMintimeout: 4,\n fetchRetryMaxtimeout: 5,\n networkConcurrency: 6,\n maxSockets: 7,\n };\n httpStub.resolves(globalConfig);\n expect(await depResolver.getNetworkConfig()).to.deep.equal(globalConfig);\n });\n it('should return settings from package manager config', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n const pmConfig = {\n fetchTimeout: 11,\n fetchRetries: 22,\n fetchRetryFactor: 33,\n fetchRetryMintimeout: 44,\n fetchRetryMaxtimeout: 55,\n networkConcurrency: 66,\n maxSockets: 77,\n };\n packageManagerSlot.get.returns({\n getNetworkConfig: () => pmConfig,\n });\n httpStub.resolves({});\n expect(await depResolver.getNetworkConfig()).to.deep.equal(pmConfig);\n });\n it('should return settings from aspect config', async () => {\n const config = {\n fetchTimeout: 111,\n fetchRetries: 222,\n fetchRetryFactor: 333,\n fetchRetryMintimeout: 444,\n fetchRetryMaxtimeout: 555,\n networkConcurrency: 666,\n maxSockets: 777,\n } as any;\n httpStub.resolves({});\n const depResolver = new DependencyResolverMain(\n config,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n expect(await depResolver.getNetworkConfig()).to.deep.equal(config);\n });\n it('should merge settings from global config, package manager config, and aspect config', async () => {\n const globalConfig = {\n fetchTimeout: 1,\n fetchRetries: 2,\n };\n const pmConfig = {\n fetchRetryFactor: 33,\n fetchRetryMintimeout: 44,\n };\n const config = {\n fetchRetryMaxtimeout: 555,\n networkConcurrency: 666,\n maxSockets: 777,\n } as any;\n httpStub.resolves(globalConfig);\n packageManagerSlot.get.returns({\n getNetworkConfig: () => pmConfig,\n });\n const depResolver = new DependencyResolverMain(\n config,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n expect(await depResolver.getNetworkConfig()).to.deep.equal({\n fetchTimeout: 1,\n fetchRetries: 2,\n fetchRetryFactor: 33,\n fetchRetryMintimeout: 44,\n fetchRetryMaxtimeout: 555,\n networkConcurrency: 666,\n maxSockets: 777,\n });\n });\n it('should read cafile when it is returned by the global config', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n { debug: sinon.stub() } as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n httpStub.resolves({\n cafile: path.join(__dirname, 'fixtures/cafile.txt'),\n });\n expect((await depResolver.getNetworkConfig()).ca).to.deep.equal([\n `-----BEGIN CERTIFICATE-----\nXXXX\n-----END CERTIFICATE-----`,\n ]);\n });\n});\n\ndescribe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {\n function createDependencyResolverMain(\n resolveRemoteVersion: (spec: string) => { version: string | undefined },\n policy: any\n ) {\n const packageManagerSlot = {\n get: () => ({\n resolveRemoteVersion,\n getNetworkConfig: () => ({}),\n }),\n };\n return new DependencyResolverMain(\n { policy } as any,\n {} as any,\n {} as any,\n {} as any,\n {\n debug: sinon.stub(),\n setStatusLine: sinon.stub(),\n consoleSuccess: sinon.stub(),\n } as any,\n {} as any,\n {} as any,\n {\n getConfig: () => false,\n } as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n }\n describe('without options', () => {\n function resolveRemoteVersion(spec: string): { version: string | undefined } {\n if (spec === 'cannot-resolve@latest') throw new Error('Cannot resolve latest');\n return {\n version: {\n 'root-runtime-dep1@latest': '2.0.0',\n 'root-peer-dep1@latest': '2.0.0',\n 'variant1-runtime-dep1@latest': '2.0.0',\n 'variant1-runtime-dep3@latest': '2.0.0',\n 'variant1-dev-dep1@latest': '2.0.0',\n 'variant1-dev-dep3@latest': '2.0.0',\n 'variant1-peer-dep1@latest': '2.0.0',\n 'variant1-peer-dep3@latest': '2.0.0',\n 'component1-runtime-dep1@latest': '2.0.0',\n 'component1-runtime-dep3@latest': '2.0.0',\n 'component1-dev-dep1@latest': '2.0.0',\n 'component1-dev-dep3@latest': '2.0.0',\n 'component1-peer-dep1@latest': '2.0.0',\n 'component1-peer-dep3@latest': '2.0.0',\n 'pkg-with-old-latest@latest': '0.0.0',\n }[spec],\n };\n }\n const policy = {\n dependencies: {\n 'root-runtime-dep1': '1.0.0',\n 'root-runtime-dep2': '1.0.0',\n },\n peerDependencies: {\n 'root-peer-dep1': '1.0.0',\n 'root-peer-dep2': '1.0.0',\n },\n };\n const depResolver = createDependencyResolverMain(resolveRemoteVersion, policy);\n it('should return outdated dependencies', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {\n '{variant1/*}': {\n dependencies: {\n 'variant1-runtime-dep1': '1.0.0',\n 'variant1-runtime-dep2': '1.0.0',\n 'variant1-runtime-dep3': '-',\n },\n devDependencies: {\n 'variant1-dev-dep1': '1.0.0',\n 'variant1-dev-dep2': '1.0.0',\n 'variant1-dev-dep3': '-',\n },\n peerDependencies: {\n 'variant1-peer-dep1': '1.0.0',\n 'variant1-peer-dep2': '1.0.0',\n 'variant1-peer-dep3': '-',\n },\n },\n },\n componentPolicies: [\n {\n componentId: ComponentID.fromString('scope/component1'),\n policy: {\n dependencies: {\n 'pkg-with-old-latest': '1.0.0',\n 'cannot-resolve': '1.0.0',\n 'component1-runtime-dep1': '1.0.0',\n 'component1-runtime-dep2': '1.0.0',\n 'component1-runtime-dep3': '-',\n },\n devDependencies: {\n 'component1-dev-dep1': '1.0.0',\n 'component1-dev-dep2': '1.0.0',\n 'component1-dev-dep3': '-',\n },\n peerDependencies: {\n 'component1-peer-dep1': '1.0.0',\n 'component1-peer-dep2': '1.0.0',\n 'component1-peer-dep3': '-',\n },\n },\n },\n ],\n components: [],\n });\n expect(outdatedPkgs).to.deep.equal([\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'root-runtime-dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'root-peer-dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'peerDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'variant1-runtime-dep1',\n source: 'variants',\n variantPattern: '{variant1/*}',\n targetField: 'dependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'variant1-dev-dep1',\n source: 'variants',\n variantPattern: '{variant1/*}',\n targetField: 'devDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'variant1-peer-dep1',\n source: 'variants',\n variantPattern: '{variant1/*}',\n targetField: 'peerDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'component1-runtime-dep1',\n source: 'component',\n componentId: ComponentID.fromString('scope/component1'),\n targetField: 'dependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'component1-dev-dep1',\n source: 'component',\n componentId: ComponentID.fromString('scope/component1'),\n targetField: 'devDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'component1-peer-dep1',\n source: 'component',\n componentId: ComponentID.fromString('scope/component1'),\n targetField: 'peerDependencies',\n },\n ]);\n });\n });\n describe('forced version bump', () => {\n function resolveRemoteVersion(spec: string): { version: string | undefined } {\n return {\n version: {\n 'dep1@>=0.0.1 <0.1.0': '0.0.2',\n 'dep1@>=0.0.1 <1.0.0': '0.0.2',\n 'dep1@latest': '0.0.2',\n\n 'dep2@>=0.1.0 <0.2.0': '0.1.0',\n 'dep2@>=0.1.0 <1.0.0': '0.2.0',\n 'dep2@latest': '0.2.0',\n\n 'dep3@>=1.0.0 <1.1.0': '1.0.0',\n 'dep3@>=1.0.0 <2.0.0': '1.0.0',\n 'dep3@latest': '2.0.0',\n }[spec],\n };\n }\n const policy = {\n dependencies: {\n dep1: '0.0.1',\n dep2: '^0.1.0',\n dep3: '^1.0.0',\n },\n };\n const depResolver = createDependencyResolverMain(resolveRemoteVersion, policy);\n it('should return outdated dependencies when forcedVersionBump is set to patch', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {},\n componentPolicies: [],\n components: [],\n forceVersionBump: 'patch',\n });\n expect(outdatedPkgs).to.deep.equal([\n {\n currentRange: '0.0.1',\n latestRange: '0.0.2',\n name: 'dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n ]);\n });\n it('should return outdated dependencies when forcedVersionBump is set to minor', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {},\n componentPolicies: [],\n components: [],\n forceVersionBump: 'minor',\n });\n expect(outdatedPkgs).to.deep.equal([\n {\n currentRange: '0.0.1',\n latestRange: '0.0.2',\n name: 'dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '^0.1.0',\n latestRange: '^0.2.0',\n name: 'dep2',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n ]);\n });\n it('should return outdated dependencies when forcedVersionBump is set to major', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {},\n componentPolicies: [],\n components: [],\n forceVersionBump: 'major',\n });\n expect(outdatedPkgs).to.deep.equal([\n {\n currentRange: '0.0.1',\n latestRange: '0.0.2',\n name: 'dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '^0.1.0',\n latestRange: '^0.2.0',\n name: 'dep2',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '^1.0.0',\n latestRange: '^2.0.0',\n name: 'dep3',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n ]);\n });\n });\n});\n\ndescribe('DepenendencyResolverMain.getComponentEnvPolicyFromEnv()', () => {\n it('should throw an error if the env policy has a peer with an empty string set for the supportedRange', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {\n isCoreEnv: () => false,\n } as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n try {\n await depResolver.getComponentEnvPolicyFromEnv(\n {\n getDependencies: () => ({\n peers: [\n {\n name: '@teambit/community.ui.bit-cli.commands-provider',\n supportedRange: '',\n version: '',\n },\n ],\n }),\n },\n { envId: 'teambit.test/test' }\n );\n expect.fail('Expected method to throw');\n } catch (error: any) {\n expect(error.message).to.equal(\n 'Peer \"@teambit/community.ui.bit-cli.commands-provider\" has an empty supportedRange'\n );\n }\n });\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function _chai() {
|
|
4
|
+
const data = require("chai");
|
|
5
|
+
_chai = function () {
|
|
6
|
+
return data;
|
|
7
|
+
};
|
|
8
|
+
return data;
|
|
9
|
+
}
|
|
10
|
+
function _sinon() {
|
|
11
|
+
const data = _interopRequireDefault(require("sinon"));
|
|
12
|
+
_sinon = function () {
|
|
13
|
+
return data;
|
|
14
|
+
};
|
|
15
|
+
return data;
|
|
16
|
+
}
|
|
3
17
|
function _updateDependencyVersion() {
|
|
4
18
|
const data = require("./update-dependency-version");
|
|
5
19
|
_updateDependencyVersion = function () {
|
|
@@ -7,28 +21,33 @@ function _updateDependencyVersion() {
|
|
|
7
21
|
};
|
|
8
22
|
return data;
|
|
9
23
|
}
|
|
24
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
25
|
describe('updateDependencyVersion()', function () {
|
|
11
26
|
it('should pick version from root policy, when no variation policy is present', function () {
|
|
27
|
+
const setVersionStub = _sinon().default.stub();
|
|
28
|
+
const getValidSemverDepVersionStub = _sinon().default.stub();
|
|
12
29
|
const dependency = {
|
|
13
30
|
getPackageName: () => 'foo',
|
|
14
31
|
lifecycle: 'dev',
|
|
15
32
|
version: '1.0.0',
|
|
16
|
-
|
|
17
|
-
setVersion: jest.fn()
|
|
33
|
+
setVersion: setVersionStub
|
|
18
34
|
}; // eslint-disable-line
|
|
35
|
+
|
|
19
36
|
const rootPolicy = {
|
|
20
|
-
|
|
21
|
-
getValidSemverDepVersion: jest.fn((pkgName, lifecycle) => lifecycle === 'runtime' ? '2.0.0' : undefined)
|
|
37
|
+
getValidSemverDepVersion: getValidSemverDepVersionStub.callsFake((pkgName, lifecycle) => lifecycle === 'runtime' ? '2.0.0' : undefined)
|
|
22
38
|
}; // eslint-disable-line
|
|
39
|
+
|
|
23
40
|
const variationPolicy = {
|
|
24
41
|
getDepVersion: () => undefined
|
|
25
42
|
}; // eslint-disable-line
|
|
43
|
+
|
|
26
44
|
(0, _updateDependencyVersion().updateDependencyVersion)(dependency, rootPolicy, variationPolicy);
|
|
45
|
+
|
|
27
46
|
// The lifecycle type is changed to runtime
|
|
28
47
|
// root policies don't have a separate property for dev dependencies
|
|
29
48
|
// both runtime and dev dependencies are specified through "dependencies"
|
|
30
|
-
|
|
31
|
-
|
|
49
|
+
(0, _chai().expect)(getValidSemverDepVersionStub.calledWith('foo', 'runtime')).to.be.true;
|
|
50
|
+
(0, _chai().expect)(setVersionStub.calledWith('2.0.0')).to.be.true;
|
|
32
51
|
});
|
|
33
52
|
});
|
|
34
53
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_chai","data","require","_sinon","_interopRequireDefault","_updateDependencyVersion","e","__esModule","default","describe","it","setVersionStub","sinon","stub","getValidSemverDepVersionStub","dependency","getPackageName","lifecycle","version","setVersion","rootPolicy","getValidSemverDepVersion","callsFake","pkgName","undefined","variationPolicy","getDepVersion","updateDependencyVersion","expect","calledWith","to","be","true"],"sources":["update-dependency-version.spec.ts"],"sourcesContent":["import { expect } from 'chai';\nimport sinon from 'sinon';\nimport { updateDependencyVersion } from './update-dependency-version';\nimport type { DependencyLifecycleType } from '../dependencies';\n\ndescribe('updateDependencyVersion()', function () {\n it('should pick version from root policy, when no variation policy is present', function () {\n const setVersionStub = sinon.stub();\n const getValidSemverDepVersionStub = sinon.stub();\n\n const dependency = {\n getPackageName: () => 'foo',\n lifecycle: 'dev',\n version: '1.0.0',\n setVersion: setVersionStub,\n } as any; // eslint-disable-line\n\n const rootPolicy = {\n getValidSemverDepVersion: getValidSemverDepVersionStub.callsFake(\n (pkgName: string, lifecycle: DependencyLifecycleType) => (lifecycle === 'runtime' ? '2.0.0' : undefined)\n ),\n } as any; // eslint-disable-line\n\n const variationPolicy = {\n getDepVersion: () => undefined,\n } as any; // eslint-disable-line\n\n updateDependencyVersion(dependency, rootPolicy, variationPolicy);\n\n // The lifecycle type is changed to runtime\n // root policies don't have a separate property for dev dependencies\n // both runtime and dev dependencies are specified through \"dependencies\"\n expect(getValidSemverDepVersionStub.calledWith('foo', 'runtime')).to.be.true;\n expect(setVersionStub.calledWith('2.0.0')).to.be.true;\n });\n});\n"],"mappings":";;AAAA,SAAAA,MAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,KAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,OAAA;EAAA,MAAAF,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAC,MAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,yBAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,wBAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAsE,SAAAG,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGtEG,QAAQ,CAAC,2BAA2B,EAAE,YAAY;EAChDC,EAAE,CAAC,2EAA2E,EAAE,YAAY;IAC1F,MAAMC,cAAc,GAAGC,gBAAK,CAACC,IAAI,CAAC,CAAC;IACnC,MAAMC,4BAA4B,GAAGF,gBAAK,CAACC,IAAI,CAAC,CAAC;IAEjD,MAAME,UAAU,GAAG;MACjBC,cAAc,EAAEA,CAAA,KAAM,KAAK;MAC3BC,SAAS,EAAE,KAAK;MAChBC,OAAO,EAAE,OAAO;MAChBC,UAAU,EAAER;IACd,CAAQ,CAAC,CAAC;;IAEV,MAAMS,UAAU,GAAG;MACjBC,wBAAwB,EAAEP,4BAA4B,CAACQ,SAAS,CAC9D,CAACC,OAAe,EAAEN,SAAkC,KAAMA,SAAS,KAAK,SAAS,GAAG,OAAO,GAAGO,SAChG;IACF,CAAQ,CAAC,CAAC;;IAEV,MAAMC,eAAe,GAAG;MACtBC,aAAa,EAAEA,CAAA,KAAMF;IACvB,CAAQ,CAAC,CAAC;;IAEV,IAAAG,kDAAuB,EAACZ,UAAU,EAAEK,UAAU,EAAEK,eAAe,CAAC;;IAEhE;IACA;IACA;IACA,IAAAG,cAAM,EAACd,4BAA4B,CAACe,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAACC,EAAE,CAACC,EAAE,CAACC,IAAI;IAC5E,IAAAJ,cAAM,EAACjB,cAAc,CAACkB,UAAU,CAAC,OAAO,CAAC,CAAC,CAACC,EAAE,CAACC,EAAE,CAACC,IAAI;EACvD,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.dependencies_dependency-resolver@1.0.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.dependencies_dependency-resolver@1.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.dependencies_dependency-resolver@1.0.686/dist/dependency-resolver.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.dependencies_dependency-resolver@1.0.686/dist/dependency-resolver.docs.mdx';
|
|
3
3
|
|
|
4
4
|
export const compositions = [compositions_0];
|
|
5
5
|
export const overview = [overview_0];
|
|
@@ -1,29 +1,36 @@
|
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import sinon from 'sinon';
|
|
1
3
|
import { updateDependencyVersion } from './update-dependency-version';
|
|
2
4
|
import type { DependencyLifecycleType } from '../dependencies';
|
|
3
5
|
|
|
4
6
|
describe('updateDependencyVersion()', function () {
|
|
5
7
|
it('should pick version from root policy, when no variation policy is present', function () {
|
|
8
|
+
const setVersionStub = sinon.stub();
|
|
9
|
+
const getValidSemverDepVersionStub = sinon.stub();
|
|
10
|
+
|
|
6
11
|
const dependency = {
|
|
7
12
|
getPackageName: () => 'foo',
|
|
8
13
|
lifecycle: 'dev',
|
|
9
14
|
version: '1.0.0',
|
|
10
|
-
|
|
11
|
-
setVersion: jest.fn(),
|
|
15
|
+
setVersion: setVersionStub,
|
|
12
16
|
} as any; // eslint-disable-line
|
|
17
|
+
|
|
13
18
|
const rootPolicy = {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
lifecycle === 'runtime' ? '2.0.0' : undefined
|
|
19
|
+
getValidSemverDepVersion: getValidSemverDepVersionStub.callsFake(
|
|
20
|
+
(pkgName: string, lifecycle: DependencyLifecycleType) => (lifecycle === 'runtime' ? '2.0.0' : undefined)
|
|
17
21
|
),
|
|
18
22
|
} as any; // eslint-disable-line
|
|
23
|
+
|
|
19
24
|
const variationPolicy = {
|
|
20
25
|
getDepVersion: () => undefined,
|
|
21
26
|
} as any; // eslint-disable-line
|
|
27
|
+
|
|
22
28
|
updateDependencyVersion(dependency, rootPolicy, variationPolicy);
|
|
29
|
+
|
|
23
30
|
// The lifecycle type is changed to runtime
|
|
24
31
|
// root policies don't have a separate property for dev dependencies
|
|
25
32
|
// both runtime and dev dependencies are specified through "dependencies"
|
|
26
|
-
expect(
|
|
27
|
-
expect(
|
|
33
|
+
expect(getValidSemverDepVersionStub.calledWith('foo', 'runtime')).to.be.true;
|
|
34
|
+
expect(setVersionStub.calledWith('2.0.0')).to.be.true;
|
|
28
35
|
});
|
|
29
36
|
});
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/dependency-resolver",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.686",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/dependencies/dependency-resolver",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.dependencies",
|
|
8
8
|
"name": "dependency-resolver",
|
|
9
|
-
"version": "1.0.
|
|
9
|
+
"version": "1.0.686"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"chalk": "4.1.2",
|
|
@@ -53,25 +53,26 @@
|
|
|
53
53
|
"@teambit/legacy.consumer-config": "0.0.64",
|
|
54
54
|
"@teambit/toolbox.crypto.sha1": "0.0.7",
|
|
55
55
|
"@teambit/toolbox.object.sorter": "0.0.2",
|
|
56
|
-
"@teambit/component": "1.0.
|
|
57
|
-
"@teambit/envs": "1.0.
|
|
58
|
-
"@teambit/aspect-loader": "1.0.
|
|
59
|
-
"@teambit/objects": "0.0.
|
|
60
|
-
"@teambit/graphql": "1.0.
|
|
56
|
+
"@teambit/component": "1.0.686",
|
|
57
|
+
"@teambit/envs": "1.0.686",
|
|
58
|
+
"@teambit/aspect-loader": "1.0.686",
|
|
59
|
+
"@teambit/objects": "0.0.193",
|
|
60
|
+
"@teambit/graphql": "1.0.686"
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|
|
63
|
-
"@types/chai": "4.2.15",
|
|
64
|
-
"chai": "4.3.0",
|
|
65
63
|
"@types/fs-extra": "9.0.7",
|
|
66
64
|
"@types/lodash": "4.14.165",
|
|
65
|
+
"sinon": "17.0.1",
|
|
67
66
|
"@types/semver": "7.5.8",
|
|
68
67
|
"@types/mocha": "9.1.0",
|
|
69
68
|
"@teambit/dependencies.aspect-docs.dependency-resolver": "0.0.181",
|
|
70
|
-
"@teambit/harmony.envs.core-aspect-env
|
|
69
|
+
"@teambit/harmony.envs.core-aspect-env": "0.0.72"
|
|
71
70
|
},
|
|
72
71
|
"peerDependencies": {
|
|
73
72
|
"react": "^17.0.0 || ^18.0.0",
|
|
74
|
-
"
|
|
73
|
+
"chai": "5.2.1",
|
|
74
|
+
"@types/react": "^17.0.73",
|
|
75
|
+
"@types/chai": "5.2.2"
|
|
75
76
|
},
|
|
76
77
|
"license": "Apache-2.0",
|
|
77
78
|
"optionalDependencies": {},
|