@itentialopensource/adapter-gitlab 0.7.4 → 0.8.1
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/AUTH.md +39 -0
- package/BROKER.md +199 -0
- package/CALLS.md +169 -0
- package/CHANGELOG.md +54 -27
- package/CODE_OF_CONDUCT.md +12 -17
- package/CONTRIBUTING.md +88 -74
- package/ENHANCE.md +69 -0
- package/PROPERTIES.md +641 -0
- package/README.md +221 -571
- package/SUMMARY.md +9 -0
- package/SYSTEMINFO.md +11 -0
- package/TROUBLESHOOT.md +47 -0
- package/adapter.js +384 -73
- package/adapterBase.js +1021 -245
- package/entities/.generic/action.json +110 -5
- package/entities/.generic/schema.json +6 -1
- package/entities/groups/action.json +21 -0
- package/entities/groups/schema.json +11 -0
- package/error.json +6 -0
- package/package.json +13 -7
- package/pronghorn.json +696 -378
- package/propertiesDecorators.json +14 -0
- package/propertiesSchema.json +421 -0
- package/refs?service=git-upload-pack +0 -0
- package/report/adapterInfo.json +10 -0
- package/report/updateReport1652962168533.json +120 -0
- package/sampleProperties.json +90 -1
- package/test/integration/adapterTestBasicGet.js +1 -1
- package/test/integration/adapterTestIntegration.js +91 -102
- package/test/unit/adapterBaseTestUnit.js +30 -25
- package/test/unit/adapterTestUnit.js +239 -181
- package/utils/adapterInfo.js +206 -0
- package/utils/addAuth.js +94 -0
- package/utils/basicGet.js +1 -14
- package/utils/entitiesToDB.js +179 -0
- package/utils/modify.js +1 -1
- package/utils/patches2bundledDeps.js +90 -0
- package/utils/pre-commit.sh +3 -0
- package/utils/removeHooks.js +20 -0
- package/utils/tbScript.js +43 -22
- package/utils/tbUtils.js +99 -19
- package/utils/testRunner.js +16 -16
- package/utils/troubleshootingAdapter.js +2 -26
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
/* global describe it log pronghornProps */
|
|
5
5
|
/* eslint global-require: warn */
|
|
6
6
|
/* eslint no-unused-vars: warn */
|
|
7
|
+
/* eslint import/no-dynamic-require:warn */
|
|
7
8
|
|
|
8
9
|
// include required items for testing & logging
|
|
9
10
|
const assert = require('assert');
|
|
@@ -18,22 +19,31 @@ const { use } = require('chai');
|
|
|
18
19
|
const td = require('testdouble');
|
|
19
20
|
|
|
20
21
|
const anything = td.matchers.anything();
|
|
21
|
-
|
|
22
|
-
// stub and attemptTimeout are used throughout the code so set them here
|
|
23
22
|
let logLevel = 'none';
|
|
24
|
-
const stub = true;
|
|
25
23
|
const isRapidFail = false;
|
|
26
|
-
|
|
24
|
+
|
|
25
|
+
// read in the properties from the sampleProperties files
|
|
26
|
+
let adaptdir = __dirname;
|
|
27
|
+
if (adaptdir.endsWith('/test/integration')) {
|
|
28
|
+
adaptdir = adaptdir.substring(0, adaptdir.length - 17);
|
|
29
|
+
} else if (adaptdir.endsWith('/test/unit')) {
|
|
30
|
+
adaptdir = adaptdir.substring(0, adaptdir.length - 10);
|
|
31
|
+
}
|
|
32
|
+
const samProps = require(`${adaptdir}/sampleProperties.json`).properties;
|
|
27
33
|
|
|
28
34
|
// these variables can be changed to run in integrated mode so easier to set them here
|
|
29
35
|
// always check these in with bogus data!!!
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
36
|
+
samProps.stub = true;
|
|
37
|
+
samProps.host = 'replace.hostorip.here';
|
|
38
|
+
samProps.authentication.username = 'username';
|
|
39
|
+
samProps.authentication.password = 'password';
|
|
40
|
+
samProps.protocol = 'http';
|
|
41
|
+
samProps.port = 80;
|
|
42
|
+
samProps.ssl.enabled = false;
|
|
43
|
+
samProps.ssl.accept_invalid_cert = false;
|
|
44
|
+
samProps.request.attempt_timeout = 60000;
|
|
45
|
+
const attemptTimeout = samProps.request.attempt_timeout;
|
|
46
|
+
const { stub } = samProps;
|
|
37
47
|
|
|
38
48
|
// these are the adapter properties. You generally should not need to alter
|
|
39
49
|
// any of these after they are initially set up
|
|
@@ -45,99 +55,7 @@ global.pronghornProps = {
|
|
|
45
55
|
adapters: [{
|
|
46
56
|
id: 'Test-gitlab',
|
|
47
57
|
type: 'Gitlab',
|
|
48
|
-
properties:
|
|
49
|
-
host,
|
|
50
|
-
port,
|
|
51
|
-
base_path: '/api',
|
|
52
|
-
version: 'v4',
|
|
53
|
-
cache_location: 'none',
|
|
54
|
-
encode_pathvars: true,
|
|
55
|
-
save_metric: false,
|
|
56
|
-
protocol,
|
|
57
|
-
stub,
|
|
58
|
-
authentication: {
|
|
59
|
-
auth_method: 'static_token',
|
|
60
|
-
username,
|
|
61
|
-
password,
|
|
62
|
-
token: 'YOUR PERSONAL ACCESS TOKEN',
|
|
63
|
-
token_timeout: -1,
|
|
64
|
-
token_cache: 'local',
|
|
65
|
-
invalid_token_error: 401,
|
|
66
|
-
auth_field: 'header.headers.Private-Token',
|
|
67
|
-
auth_field_format: '{token}',
|
|
68
|
-
auth_logging: false
|
|
69
|
-
},
|
|
70
|
-
healthcheck: {
|
|
71
|
-
type: 'startup',
|
|
72
|
-
frequency: 60000,
|
|
73
|
-
query_object: {}
|
|
74
|
-
},
|
|
75
|
-
throttle: {
|
|
76
|
-
throttle_enabled: false,
|
|
77
|
-
number_pronghorns: 1,
|
|
78
|
-
sync_async: 'sync',
|
|
79
|
-
max_in_queue: 1000,
|
|
80
|
-
concurrent_max: 1,
|
|
81
|
-
expire_timeout: 0,
|
|
82
|
-
avg_runtime: 200,
|
|
83
|
-
priorities: [
|
|
84
|
-
{
|
|
85
|
-
value: 0,
|
|
86
|
-
percent: 100
|
|
87
|
-
}
|
|
88
|
-
]
|
|
89
|
-
},
|
|
90
|
-
request: {
|
|
91
|
-
number_redirects: 0,
|
|
92
|
-
number_retries: 3,
|
|
93
|
-
limit_retry_error: 0,
|
|
94
|
-
failover_codes: [],
|
|
95
|
-
attempt_timeout: attemptTimeout,
|
|
96
|
-
global_request: {
|
|
97
|
-
payload: {},
|
|
98
|
-
uriOptions: {},
|
|
99
|
-
addlHeaders: {},
|
|
100
|
-
authData: {}
|
|
101
|
-
},
|
|
102
|
-
healthcheck_on_timeout: true,
|
|
103
|
-
return_raw: true,
|
|
104
|
-
archiving: false,
|
|
105
|
-
return_request: false
|
|
106
|
-
},
|
|
107
|
-
proxy: {
|
|
108
|
-
enabled: false,
|
|
109
|
-
host: '',
|
|
110
|
-
port: 1,
|
|
111
|
-
protocol: 'http',
|
|
112
|
-
username: '',
|
|
113
|
-
password: ''
|
|
114
|
-
},
|
|
115
|
-
ssl: {
|
|
116
|
-
ecdhCurve: '',
|
|
117
|
-
enabled: sslenable,
|
|
118
|
-
accept_invalid_cert: sslinvalid,
|
|
119
|
-
ca_file: '',
|
|
120
|
-
key_file: '',
|
|
121
|
-
cert_file: '',
|
|
122
|
-
secure_protocol: '',
|
|
123
|
-
ciphers: ''
|
|
124
|
-
},
|
|
125
|
-
mongo: {
|
|
126
|
-
host: '',
|
|
127
|
-
port: 0,
|
|
128
|
-
database: '',
|
|
129
|
-
username,
|
|
130
|
-
password: '',
|
|
131
|
-
replSet: '',
|
|
132
|
-
db_ssl: {
|
|
133
|
-
enabled: false,
|
|
134
|
-
accept_invalid_cert: false,
|
|
135
|
-
ca_file: '',
|
|
136
|
-
key_file: '',
|
|
137
|
-
cert_file: ''
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
}
|
|
58
|
+
properties: samProps
|
|
141
59
|
}]
|
|
142
60
|
}
|
|
143
61
|
};
|
|
@@ -268,10 +186,10 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
268
186
|
});
|
|
269
187
|
|
|
270
188
|
let wffunctions = [];
|
|
271
|
-
describe('#
|
|
189
|
+
describe('#iapGetAdapterWorkflowFunctions', () => {
|
|
272
190
|
it('should retrieve workflow functions', (done) => {
|
|
273
191
|
try {
|
|
274
|
-
wffunctions = a.
|
|
192
|
+
wffunctions = a.iapGetAdapterWorkflowFunctions([]);
|
|
275
193
|
|
|
276
194
|
try {
|
|
277
195
|
assert.notEqual(0, wffunctions.length);
|
|
@@ -353,7 +271,7 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
353
271
|
assert.notEqual(undefined, packageDotJson.scripts);
|
|
354
272
|
assert.notEqual(null, packageDotJson.scripts);
|
|
355
273
|
assert.notEqual('', packageDotJson.scripts);
|
|
356
|
-
assert.equal('node utils/setup.js', packageDotJson.scripts.preinstall);
|
|
274
|
+
assert.equal('node utils/setup.js && npm install --package-lock-only --ignore-scripts && npx npm-force-resolutions', packageDotJson.scripts.preinstall);
|
|
357
275
|
assert.equal('node --max_old_space_size=4096 ./node_modules/eslint/bin/eslint.js . --ext .json --ext .js', packageDotJson.scripts.lint);
|
|
358
276
|
assert.equal('node --max_old_space_size=4096 ./node_modules/eslint/bin/eslint.js . --ext .json --ext .js --quiet', packageDotJson.scripts['lint:errors']);
|
|
359
277
|
assert.equal('mocha test/unit/adapterBaseTestUnit.js --LOG=error', packageDotJson.scripts['test:baseunit']);
|
|
@@ -361,7 +279,7 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
361
279
|
assert.equal('mocha test/integration/adapterTestIntegration.js --LOG=error', packageDotJson.scripts['test:integration']);
|
|
362
280
|
assert.equal('nyc --reporter html --reporter text mocha --reporter dot test/*', packageDotJson.scripts['test:cover']);
|
|
363
281
|
assert.equal('npm run test:baseunit && npm run test:unit && npm run test:integration', packageDotJson.scripts.test);
|
|
364
|
-
assert.equal('npm publish --registry=
|
|
282
|
+
assert.equal('npm publish --registry=https://registry.npmjs.org --access=public', packageDotJson.scripts.deploy);
|
|
365
283
|
assert.equal('npm run deploy', packageDotJson.scripts.build);
|
|
366
284
|
done();
|
|
367
285
|
} catch (error) {
|
|
@@ -462,16 +380,17 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
462
380
|
assert.notEqual('', pronghornDotJson.methods);
|
|
463
381
|
assert.equal(true, Array.isArray(pronghornDotJson.methods));
|
|
464
382
|
assert.notEqual(0, pronghornDotJson.methods.length);
|
|
465
|
-
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === '
|
|
466
|
-
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === '
|
|
467
|
-
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === '
|
|
468
|
-
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === '
|
|
469
|
-
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === '
|
|
470
|
-
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === '
|
|
471
|
-
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === '
|
|
472
|
-
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === '
|
|
473
|
-
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === '
|
|
383
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapUpdateAdapterConfiguration'));
|
|
384
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapFindAdapterPath'));
|
|
385
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapTroubleshootAdapter'));
|
|
386
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapRunAdapterHealthcheck'));
|
|
387
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapRunAdapterConnectivity'));
|
|
388
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapRunAdapterBasicGet'));
|
|
389
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapSuspendAdapter'));
|
|
390
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapUnsuspendAdapter'));
|
|
391
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapGetAdapterQueue'));
|
|
474
392
|
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'genericAdapterRequest'));
|
|
393
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'genericAdapterRequestNoBasePath'));
|
|
475
394
|
done();
|
|
476
395
|
} catch (error) {
|
|
477
396
|
log.error(`Test Failure: ${error}`);
|
|
@@ -643,10 +562,22 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
643
562
|
assert.equal('string', propertiesDotJson.definitions.authentication.properties.client_id.type);
|
|
644
563
|
assert.equal('string', propertiesDotJson.definitions.authentication.properties.client_secret.type);
|
|
645
564
|
assert.equal('string', propertiesDotJson.definitions.authentication.properties.grant_type.type);
|
|
565
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.ssl);
|
|
566
|
+
assert.notEqual(null, propertiesDotJson.definitions.ssl);
|
|
567
|
+
assert.notEqual('', propertiesDotJson.definitions.ssl);
|
|
568
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.ecdhCurve.type);
|
|
569
|
+
assert.equal('boolean', propertiesDotJson.definitions.ssl.properties.enabled.type);
|
|
570
|
+
assert.equal('boolean', propertiesDotJson.definitions.ssl.properties.accept_invalid_cert.type);
|
|
571
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.ca_file.type);
|
|
572
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.key_file.type);
|
|
573
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.cert_file.type);
|
|
574
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.secure_protocol.type);
|
|
575
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.ciphers.type);
|
|
646
576
|
assert.equal('string', propertiesDotJson.properties.base_path.type);
|
|
647
577
|
assert.equal('string', propertiesDotJson.properties.version.type);
|
|
648
578
|
assert.equal('string', propertiesDotJson.properties.cache_location.type);
|
|
649
579
|
assert.equal('boolean', propertiesDotJson.properties.encode_pathvars.type);
|
|
580
|
+
assert.equal('boolean', propertiesDotJson.properties.encode_queryvars.type);
|
|
650
581
|
assert.equal(true, Array.isArray(propertiesDotJson.properties.save_metric.type));
|
|
651
582
|
assert.equal('string', propertiesDotJson.properties.protocol.type);
|
|
652
583
|
assert.notEqual(undefined, propertiesDotJson.definitions);
|
|
@@ -695,17 +626,6 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
695
626
|
assert.equal('string', propertiesDotJson.definitions.proxy.properties.protocol.type);
|
|
696
627
|
assert.equal('string', propertiesDotJson.definitions.proxy.properties.username.type);
|
|
697
628
|
assert.equal('string', propertiesDotJson.definitions.proxy.properties.password.type);
|
|
698
|
-
assert.notEqual(undefined, propertiesDotJson.definitions.ssl);
|
|
699
|
-
assert.notEqual(null, propertiesDotJson.definitions.ssl);
|
|
700
|
-
assert.notEqual('', propertiesDotJson.definitions.ssl);
|
|
701
|
-
assert.equal('string', propertiesDotJson.definitions.ssl.properties.ecdhCurve.type);
|
|
702
|
-
assert.equal('boolean', propertiesDotJson.definitions.ssl.properties.enabled.type);
|
|
703
|
-
assert.equal('boolean', propertiesDotJson.definitions.ssl.properties.accept_invalid_cert.type);
|
|
704
|
-
assert.equal('string', propertiesDotJson.definitions.ssl.properties.ca_file.type);
|
|
705
|
-
assert.equal('string', propertiesDotJson.definitions.ssl.properties.key_file.type);
|
|
706
|
-
assert.equal('string', propertiesDotJson.definitions.ssl.properties.cert_file.type);
|
|
707
|
-
assert.equal('string', propertiesDotJson.definitions.ssl.properties.secure_protocol.type);
|
|
708
|
-
assert.equal('string', propertiesDotJson.definitions.ssl.properties.ciphers.type);
|
|
709
629
|
assert.notEqual(undefined, propertiesDotJson.definitions.mongo);
|
|
710
630
|
assert.notEqual(null, propertiesDotJson.definitions.mongo);
|
|
711
631
|
assert.notEqual('', propertiesDotJson.definitions.mongo);
|
|
@@ -721,6 +641,12 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
721
641
|
assert.equal('string', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.ca_file.type);
|
|
722
642
|
assert.equal('string', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.key_file.type);
|
|
723
643
|
assert.equal('string', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.cert_file.type);
|
|
644
|
+
assert.notEqual('', propertiesDotJson.definitions.devicebroker);
|
|
645
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.getDevice.type);
|
|
646
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.getDevicesFiltered.type);
|
|
647
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.isAlive.type);
|
|
648
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.getConfig.type);
|
|
649
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.getCount.type);
|
|
724
650
|
done();
|
|
725
651
|
} catch (error) {
|
|
726
652
|
log.error(`Test Failure: ${error}`);
|
|
@@ -826,17 +752,24 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
826
752
|
assert.notEqual(undefined, sampleDotJson.properties.authentication.client_id);
|
|
827
753
|
assert.notEqual(undefined, sampleDotJson.properties.authentication.client_secret);
|
|
828
754
|
assert.notEqual(undefined, sampleDotJson.properties.authentication.grant_type);
|
|
829
|
-
|
|
755
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl);
|
|
756
|
+
assert.notEqual(null, sampleDotJson.properties.ssl);
|
|
757
|
+
assert.notEqual('', sampleDotJson.properties.ssl);
|
|
758
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.ecdhCurve);
|
|
759
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.enabled);
|
|
760
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.accept_invalid_cert);
|
|
761
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.ca_file);
|
|
762
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.key_file);
|
|
763
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.cert_file);
|
|
764
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.secure_protocol);
|
|
765
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.ciphers);
|
|
830
766
|
assert.notEqual(undefined, sampleDotJson.properties.base_path);
|
|
831
767
|
assert.notEqual(undefined, sampleDotJson.properties.version);
|
|
832
768
|
assert.notEqual(undefined, sampleDotJson.properties.cache_location);
|
|
833
769
|
assert.notEqual(undefined, sampleDotJson.properties.encode_pathvars);
|
|
770
|
+
assert.notEqual(undefined, sampleDotJson.properties.encode_queryvars);
|
|
834
771
|
assert.notEqual(undefined, sampleDotJson.properties.save_metric);
|
|
835
772
|
assert.notEqual(undefined, sampleDotJson.properties.protocol);
|
|
836
|
-
assert.notEqual(undefined, sampleDotJson.properties.stub);
|
|
837
|
-
assert.notEqual(undefined, sampleDotJson.properties.stub);
|
|
838
|
-
assert.notEqual(undefined, sampleDotJson.properties.stub);
|
|
839
|
-
assert.notEqual(undefined, sampleDotJson.properties.stub);
|
|
840
773
|
assert.notEqual(undefined, sampleDotJson.properties.healthcheck);
|
|
841
774
|
assert.notEqual(null, sampleDotJson.properties.healthcheck);
|
|
842
775
|
assert.notEqual('', sampleDotJson.properties.healthcheck);
|
|
@@ -880,17 +813,6 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
880
813
|
assert.notEqual(undefined, sampleDotJson.properties.proxy.protocol);
|
|
881
814
|
assert.notEqual(undefined, sampleDotJson.properties.proxy.username);
|
|
882
815
|
assert.notEqual(undefined, sampleDotJson.properties.proxy.password);
|
|
883
|
-
assert.notEqual(undefined, sampleDotJson.properties.ssl);
|
|
884
|
-
assert.notEqual(null, sampleDotJson.properties.ssl);
|
|
885
|
-
assert.notEqual('', sampleDotJson.properties.ssl);
|
|
886
|
-
assert.notEqual(undefined, sampleDotJson.properties.ssl.ecdhCurve);
|
|
887
|
-
assert.notEqual(undefined, sampleDotJson.properties.ssl.enabled);
|
|
888
|
-
assert.notEqual(undefined, sampleDotJson.properties.ssl.accept_invalid_cert);
|
|
889
|
-
assert.notEqual(undefined, sampleDotJson.properties.ssl.ca_file);
|
|
890
|
-
assert.notEqual(undefined, sampleDotJson.properties.ssl.key_file);
|
|
891
|
-
assert.notEqual(undefined, sampleDotJson.properties.ssl.cert_file);
|
|
892
|
-
assert.notEqual(undefined, sampleDotJson.properties.ssl.secure_protocol);
|
|
893
|
-
assert.notEqual(undefined, sampleDotJson.properties.ssl.ciphers);
|
|
894
816
|
assert.notEqual(undefined, sampleDotJson.properties.mongo);
|
|
895
817
|
assert.notEqual(null, sampleDotJson.properties.mongo);
|
|
896
818
|
assert.notEqual('', sampleDotJson.properties.mongo);
|
|
@@ -906,6 +828,12 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
906
828
|
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.ca_file);
|
|
907
829
|
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.key_file);
|
|
908
830
|
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.cert_file);
|
|
831
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker);
|
|
832
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.getDevice);
|
|
833
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.getDevicesFiltered);
|
|
834
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.isAlive);
|
|
835
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.getConfig);
|
|
836
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.getCount);
|
|
909
837
|
done();
|
|
910
838
|
} catch (error) {
|
|
911
839
|
log.error(`Test Failure: ${error}`);
|
|
@@ -999,10 +927,10 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
999
927
|
});
|
|
1000
928
|
});
|
|
1001
929
|
|
|
1002
|
-
describe('#
|
|
1003
|
-
it('should have a
|
|
930
|
+
describe('#iapUpdateAdapterConfiguration', () => {
|
|
931
|
+
it('should have a iapUpdateAdapterConfiguration function', (done) => {
|
|
1004
932
|
try {
|
|
1005
|
-
assert.equal(true, typeof a.
|
|
933
|
+
assert.equal(true, typeof a.iapUpdateAdapterConfiguration === 'function');
|
|
1006
934
|
done();
|
|
1007
935
|
} catch (error) {
|
|
1008
936
|
log.error(`Test Failure: ${error}`);
|
|
@@ -1011,19 +939,19 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1011
939
|
});
|
|
1012
940
|
});
|
|
1013
941
|
|
|
1014
|
-
describe('#
|
|
1015
|
-
it('should have a
|
|
942
|
+
describe('#iapFindAdapterPath', () => {
|
|
943
|
+
it('should have a iapFindAdapterPath function', (done) => {
|
|
1016
944
|
try {
|
|
1017
|
-
assert.equal(true, typeof a.
|
|
945
|
+
assert.equal(true, typeof a.iapFindAdapterPath === 'function');
|
|
1018
946
|
done();
|
|
1019
947
|
} catch (error) {
|
|
1020
948
|
log.error(`Test Failure: ${error}`);
|
|
1021
949
|
done(error);
|
|
1022
950
|
}
|
|
1023
951
|
});
|
|
1024
|
-
it('
|
|
952
|
+
it('iapFindAdapterPath should find atleast one path that matches', (done) => {
|
|
1025
953
|
try {
|
|
1026
|
-
a.
|
|
954
|
+
a.iapFindAdapterPath('{base_path}/{version}', (data, error) => {
|
|
1027
955
|
try {
|
|
1028
956
|
assert.equal(undefined, error);
|
|
1029
957
|
assert.notEqual(undefined, data);
|
|
@@ -1045,10 +973,10 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1045
973
|
}).timeout(attemptTimeout);
|
|
1046
974
|
});
|
|
1047
975
|
|
|
1048
|
-
describe('#
|
|
1049
|
-
it('should have a
|
|
976
|
+
describe('#iapSuspendAdapter', () => {
|
|
977
|
+
it('should have a iapSuspendAdapter function', (done) => {
|
|
1050
978
|
try {
|
|
1051
|
-
assert.equal(true, typeof a.
|
|
979
|
+
assert.equal(true, typeof a.iapSuspendAdapter === 'function');
|
|
1052
980
|
done();
|
|
1053
981
|
} catch (error) {
|
|
1054
982
|
log.error(`Test Failure: ${error}`);
|
|
@@ -1057,10 +985,10 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1057
985
|
});
|
|
1058
986
|
});
|
|
1059
987
|
|
|
1060
|
-
describe('#
|
|
1061
|
-
it('should have a
|
|
988
|
+
describe('#iapUnsuspendAdapter', () => {
|
|
989
|
+
it('should have a iapUnsuspendAdapter function', (done) => {
|
|
1062
990
|
try {
|
|
1063
|
-
assert.equal(true, typeof a.
|
|
991
|
+
assert.equal(true, typeof a.iapUnsuspendAdapter === 'function');
|
|
1064
992
|
done();
|
|
1065
993
|
} catch (error) {
|
|
1066
994
|
log.error(`Test Failure: ${error}`);
|
|
@@ -1069,10 +997,10 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1069
997
|
});
|
|
1070
998
|
});
|
|
1071
999
|
|
|
1072
|
-
describe('#
|
|
1073
|
-
it('should have a
|
|
1000
|
+
describe('#iapGetAdapterQueue', () => {
|
|
1001
|
+
it('should have a iapGetAdapterQueue function', (done) => {
|
|
1074
1002
|
try {
|
|
1075
|
-
assert.equal(true, typeof a.
|
|
1003
|
+
assert.equal(true, typeof a.iapGetAdapterQueue === 'function');
|
|
1076
1004
|
done();
|
|
1077
1005
|
} catch (error) {
|
|
1078
1006
|
log.error(`Test Failure: ${error}`);
|
|
@@ -1081,10 +1009,10 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1081
1009
|
});
|
|
1082
1010
|
});
|
|
1083
1011
|
|
|
1084
|
-
describe('#
|
|
1085
|
-
it('should have a
|
|
1012
|
+
describe('#iapTroubleshootAdapter', () => {
|
|
1013
|
+
it('should have a iapTroubleshootAdapter function', (done) => {
|
|
1086
1014
|
try {
|
|
1087
|
-
assert.equal(true, typeof a.
|
|
1015
|
+
assert.equal(true, typeof a.iapTroubleshootAdapter === 'function');
|
|
1088
1016
|
done();
|
|
1089
1017
|
} catch (error) {
|
|
1090
1018
|
log.error(`Test Failure: ${error}`);
|
|
@@ -1093,10 +1021,10 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1093
1021
|
});
|
|
1094
1022
|
});
|
|
1095
1023
|
|
|
1096
|
-
describe('#
|
|
1097
|
-
it('should have a
|
|
1024
|
+
describe('#iapRunAdapterHealthcheck', () => {
|
|
1025
|
+
it('should have a iapRunAdapterHealthcheck function', (done) => {
|
|
1098
1026
|
try {
|
|
1099
|
-
assert.equal(true, typeof a.
|
|
1027
|
+
assert.equal(true, typeof a.iapRunAdapterHealthcheck === 'function');
|
|
1100
1028
|
done();
|
|
1101
1029
|
} catch (error) {
|
|
1102
1030
|
log.error(`Test Failure: ${error}`);
|
|
@@ -1105,10 +1033,10 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1105
1033
|
});
|
|
1106
1034
|
});
|
|
1107
1035
|
|
|
1108
|
-
describe('#
|
|
1109
|
-
it('should have a
|
|
1036
|
+
describe('#iapRunAdapterConnectivity', () => {
|
|
1037
|
+
it('should have a iapRunAdapterConnectivity function', (done) => {
|
|
1110
1038
|
try {
|
|
1111
|
-
assert.equal(true, typeof a.
|
|
1039
|
+
assert.equal(true, typeof a.iapRunAdapterConnectivity === 'function');
|
|
1112
1040
|
done();
|
|
1113
1041
|
} catch (error) {
|
|
1114
1042
|
log.error(`Test Failure: ${error}`);
|
|
@@ -1117,10 +1045,22 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1117
1045
|
});
|
|
1118
1046
|
});
|
|
1119
1047
|
|
|
1120
|
-
describe('#
|
|
1121
|
-
it('should have a
|
|
1048
|
+
describe('#iapRunAdapterBasicGet', () => {
|
|
1049
|
+
it('should have a iapRunAdapterBasicGet function', (done) => {
|
|
1122
1050
|
try {
|
|
1123
|
-
assert.equal(true, typeof a.
|
|
1051
|
+
assert.equal(true, typeof a.iapRunAdapterBasicGet === 'function');
|
|
1052
|
+
done();
|
|
1053
|
+
} catch (error) {
|
|
1054
|
+
log.error(`Test Failure: ${error}`);
|
|
1055
|
+
done(error);
|
|
1056
|
+
}
|
|
1057
|
+
});
|
|
1058
|
+
});
|
|
1059
|
+
|
|
1060
|
+
describe('#iapMoveAdapterEntitiesToDB', () => {
|
|
1061
|
+
it('should have a iapMoveAdapterEntitiesToDB function', (done) => {
|
|
1062
|
+
try {
|
|
1063
|
+
assert.equal(true, typeof a.iapMoveAdapterEntitiesToDB === 'function');
|
|
1124
1064
|
done();
|
|
1125
1065
|
} catch (error) {
|
|
1126
1066
|
log.error(`Test Failure: ${error}`);
|
|
@@ -1214,10 +1154,10 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1214
1154
|
}).timeout(attemptTimeout);
|
|
1215
1155
|
});
|
|
1216
1156
|
|
|
1217
|
-
// describe('#
|
|
1218
|
-
// it('should have a
|
|
1157
|
+
// describe('#iapHasAdapterEntity', () => {
|
|
1158
|
+
// it('should have a iapHasAdapterEntity function', (done) => {
|
|
1219
1159
|
// try {
|
|
1220
|
-
// assert.equal(true, typeof a.
|
|
1160
|
+
// assert.equal(true, typeof a.iapHasAdapterEntity === 'function');
|
|
1221
1161
|
// done();
|
|
1222
1162
|
// } catch (error) {
|
|
1223
1163
|
// log.error(`Test Failure: ${error}`);
|
|
@@ -1226,7 +1166,7 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1226
1166
|
// });
|
|
1227
1167
|
// it('should find entity', (done) => {
|
|
1228
1168
|
// try {
|
|
1229
|
-
// a.
|
|
1169
|
+
// a.iapHasAdapterEntity('template_entity', // 'a9e9c33dc61122760072455df62663d2', (data) => {
|
|
1230
1170
|
// try {
|
|
1231
1171
|
// assert.equal(true, data[0]);
|
|
1232
1172
|
// done();
|
|
@@ -1242,7 +1182,7 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1242
1182
|
// }).timeout(attemptTimeout);
|
|
1243
1183
|
// it('should not find entity', (done) => {
|
|
1244
1184
|
// try {
|
|
1245
|
-
// a.
|
|
1185
|
+
// a.iapHasAdapterEntity('template_entity', 'blah', (data) => {
|
|
1246
1186
|
// try {
|
|
1247
1187
|
// assert.equal(false, data[0]);
|
|
1248
1188
|
// done();
|
|
@@ -1258,6 +1198,78 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1258
1198
|
// }).timeout(attemptTimeout);
|
|
1259
1199
|
// });
|
|
1260
1200
|
|
|
1201
|
+
describe('#hasEntities', () => {
|
|
1202
|
+
it('should have a hasEntities function', (done) => {
|
|
1203
|
+
try {
|
|
1204
|
+
assert.equal(true, typeof a.hasEntities === 'function');
|
|
1205
|
+
done();
|
|
1206
|
+
} catch (error) {
|
|
1207
|
+
log.error(`Test Failure: ${error}`);
|
|
1208
|
+
done(error);
|
|
1209
|
+
}
|
|
1210
|
+
});
|
|
1211
|
+
});
|
|
1212
|
+
|
|
1213
|
+
describe('#getDevice', () => {
|
|
1214
|
+
it('should have a getDevice function', (done) => {
|
|
1215
|
+
try {
|
|
1216
|
+
assert.equal(true, typeof a.getDevice === 'function');
|
|
1217
|
+
done();
|
|
1218
|
+
} catch (error) {
|
|
1219
|
+
log.error(`Test Failure: ${error}`);
|
|
1220
|
+
done(error);
|
|
1221
|
+
}
|
|
1222
|
+
});
|
|
1223
|
+
});
|
|
1224
|
+
|
|
1225
|
+
describe('#getDevicesFiltered', () => {
|
|
1226
|
+
it('should have a getDevicesFiltered function', (done) => {
|
|
1227
|
+
try {
|
|
1228
|
+
assert.equal(true, typeof a.getDevicesFiltered === 'function');
|
|
1229
|
+
done();
|
|
1230
|
+
} catch (error) {
|
|
1231
|
+
log.error(`Test Failure: ${error}`);
|
|
1232
|
+
done(error);
|
|
1233
|
+
}
|
|
1234
|
+
});
|
|
1235
|
+
});
|
|
1236
|
+
|
|
1237
|
+
describe('#isAlive', () => {
|
|
1238
|
+
it('should have a isAlive function', (done) => {
|
|
1239
|
+
try {
|
|
1240
|
+
assert.equal(true, typeof a.isAlive === 'function');
|
|
1241
|
+
done();
|
|
1242
|
+
} catch (error) {
|
|
1243
|
+
log.error(`Test Failure: ${error}`);
|
|
1244
|
+
done(error);
|
|
1245
|
+
}
|
|
1246
|
+
});
|
|
1247
|
+
});
|
|
1248
|
+
|
|
1249
|
+
describe('#getConfig', () => {
|
|
1250
|
+
it('should have a getConfig function', (done) => {
|
|
1251
|
+
try {
|
|
1252
|
+
assert.equal(true, typeof a.getConfig === 'function');
|
|
1253
|
+
done();
|
|
1254
|
+
} catch (error) {
|
|
1255
|
+
log.error(`Test Failure: ${error}`);
|
|
1256
|
+
done(error);
|
|
1257
|
+
}
|
|
1258
|
+
});
|
|
1259
|
+
});
|
|
1260
|
+
|
|
1261
|
+
describe('#iapGetDeviceCount', () => {
|
|
1262
|
+
it('should have a iapGetDeviceCount function', (done) => {
|
|
1263
|
+
try {
|
|
1264
|
+
assert.equal(true, typeof a.iapGetDeviceCount === 'function');
|
|
1265
|
+
done();
|
|
1266
|
+
} catch (error) {
|
|
1267
|
+
log.error(`Test Failure: ${error}`);
|
|
1268
|
+
done(error);
|
|
1269
|
+
}
|
|
1270
|
+
});
|
|
1271
|
+
});
|
|
1272
|
+
|
|
1261
1273
|
/*
|
|
1262
1274
|
-----------------------------------------------------------------------
|
|
1263
1275
|
-----------------------------------------------------------------------
|
|
@@ -1930,7 +1942,36 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
1930
1942
|
a.getV4GroupsIdProjects(null, null, null, null, null, null, null, null, null, (data, error) => {
|
|
1931
1943
|
try {
|
|
1932
1944
|
const displayE = 'id is required';
|
|
1933
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-gitlab-adapter-
|
|
1945
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-gitlab-adapter-getV4GroupsIdProjectsWithOptions', displayE);
|
|
1946
|
+
done();
|
|
1947
|
+
} catch (err) {
|
|
1948
|
+
log.error(`Test Failure: ${err}`);
|
|
1949
|
+
done(err);
|
|
1950
|
+
}
|
|
1951
|
+
});
|
|
1952
|
+
} catch (error) {
|
|
1953
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1954
|
+
done(error);
|
|
1955
|
+
}
|
|
1956
|
+
}).timeout(attemptTimeout);
|
|
1957
|
+
});
|
|
1958
|
+
|
|
1959
|
+
describe('#getV4GroupsIdProjectsWithOptions - errors', () => {
|
|
1960
|
+
it('should have a getV4GroupsIdProjectsWithOptions function', (done) => {
|
|
1961
|
+
try {
|
|
1962
|
+
assert.equal(true, typeof a.getV4GroupsIdProjectsWithOptions === 'function');
|
|
1963
|
+
done();
|
|
1964
|
+
} catch (error) {
|
|
1965
|
+
log.error(`Test Failure: ${error}`);
|
|
1966
|
+
done(error);
|
|
1967
|
+
}
|
|
1968
|
+
}).timeout(attemptTimeout);
|
|
1969
|
+
it('should error if - missing id', (done) => {
|
|
1970
|
+
try {
|
|
1971
|
+
a.getV4GroupsIdProjectsWithOptions(null, null, (data, error) => {
|
|
1972
|
+
try {
|
|
1973
|
+
const displayE = 'id is required';
|
|
1974
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-gitlab-adapter-getV4GroupsIdProjectsWithOptions', displayE);
|
|
1934
1975
|
done();
|
|
1935
1976
|
} catch (err) {
|
|
1936
1977
|
log.error(`Test Failure: ${err}`);
|
|
@@ -16193,7 +16234,7 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
16193
16234
|
}).timeout(attemptTimeout);
|
|
16194
16235
|
it('should error if - missing id', (done) => {
|
|
16195
16236
|
try {
|
|
16196
|
-
a.deleteV4ProjectsIdRepositoryFiles(null, null, (data, error) => {
|
|
16237
|
+
a.deleteV4ProjectsIdRepositoryFiles(null, null, null, (data, error) => {
|
|
16197
16238
|
try {
|
|
16198
16239
|
const displayE = 'id is required';
|
|
16199
16240
|
runErrorAsserts(data, error, 'AD.300', 'Test-gitlab-adapter-deleteV4ProjectsIdRepositoryFiles', displayE);
|
|
@@ -16210,7 +16251,7 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
16210
16251
|
}).timeout(attemptTimeout);
|
|
16211
16252
|
it('should error if - missing filePath', (done) => {
|
|
16212
16253
|
try {
|
|
16213
|
-
a.deleteV4ProjectsIdRepositoryFiles('fakeparam', null, (data, error) => {
|
|
16254
|
+
a.deleteV4ProjectsIdRepositoryFiles('fakeparam', null, null, (data, error) => {
|
|
16214
16255
|
try {
|
|
16215
16256
|
const displayE = 'filePath is required';
|
|
16216
16257
|
runErrorAsserts(data, error, 'AD.300', 'Test-gitlab-adapter-deleteV4ProjectsIdRepositoryFiles', displayE);
|
|
@@ -16225,6 +16266,23 @@ describe('[unit] GitLab Adapter Test', () => {
|
|
|
16225
16266
|
done(error);
|
|
16226
16267
|
}
|
|
16227
16268
|
}).timeout(attemptTimeout);
|
|
16269
|
+
it('should error if - missing body', (done) => {
|
|
16270
|
+
try {
|
|
16271
|
+
a.deleteV4ProjectsIdRepositoryFiles('fakeparam', 'fakeparam', null, (data, error) => {
|
|
16272
|
+
try {
|
|
16273
|
+
const displayE = 'body is required';
|
|
16274
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-gitlab-adapter-deleteV4ProjectsIdRepositoryFiles', displayE);
|
|
16275
|
+
done();
|
|
16276
|
+
} catch (err) {
|
|
16277
|
+
log.error(`Test Failure: ${err}`);
|
|
16278
|
+
done(err);
|
|
16279
|
+
}
|
|
16280
|
+
});
|
|
16281
|
+
} catch (error) {
|
|
16282
|
+
log.error(`Adapter Exception: ${error}`);
|
|
16283
|
+
done(error);
|
|
16284
|
+
}
|
|
16285
|
+
}).timeout(attemptTimeout);
|
|
16228
16286
|
});
|
|
16229
16287
|
|
|
16230
16288
|
describe('#getV4ProjectsRepositoryFilesRaw - errors', () => {
|