@itentialopensource/adapter-aws_cloudformation 0.1.4 → 0.2.2
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 +53 -0
- package/BROKER.md +199 -0
- package/CALLS.md +620 -0
- package/CHANGELOG.md +3 -26
- package/CODE_OF_CONDUCT.md +12 -17
- package/CONTRIBUTING.md +3 -148
- package/ENHANCE.md +69 -0
- package/PROPERTIES.md +641 -0
- package/README.md +239 -507
- package/SUMMARY.md +9 -0
- package/TROUBLESHOOT.md +47 -0
- package/adapter.js +4031 -1143
- package/adapterBase.js +843 -397
- package/changelogs/CHANGELOG.md +48 -0
- package/entities/.generic/action.json +110 -5
- package/entities/.generic/schema.json +6 -1
- package/entities/.system/action.json +1 -1
- package/entities/Account/action.json +42 -0
- package/entities/Account/mockdatafiles/describePublisher-default.xml +6 -0
- package/entities/Account/mockdatafiles/registerPublisher-default.xml +6 -0
- package/entities/Account/schema.json +3 -1
- package/entities/ChangeSet/action.json +21 -0
- package/entities/ChangeSet/mockdatafiles/describeChangeSetHooks-default.xml +6 -0
- package/entities/ChangeSet/schema.json +2 -1
- package/entities/Organization/action.json +67 -0
- package/entities/Organization/mockdatafiles/activateOrganizationsAccess-default.xml +6 -0
- package/entities/Organization/mockdatafiles/deactivateOrganizationsAccess-default.xml +6 -0
- package/entities/Organization/mockdatafiles/describeOrganizationsAccess-default.xml +8 -0
- package/entities/Organization/schema.json +21 -0
- package/entities/Resource/action.json +21 -0
- package/entities/Resource/mockdatafiles/recordHandlerProgress-default.xml +6 -0
- package/entities/Resource/schema.json +2 -1
- package/entities/Stack/action.json +42 -0
- package/entities/Stack/mockdatafiles/importStacksToStackSet-default.xml +6 -0
- package/entities/Stack/mockdatafiles/rollbackStack-default.xml +6 -0
- package/entities/Stack/schema.json +3 -1
- package/entities/Type/action.json +126 -0
- package/entities/Type/mockdatafiles/activateType-default.xml +6 -0
- package/entities/Type/mockdatafiles/batchDescribeTypeConfigurations-default.xml +6 -0
- package/entities/Type/mockdatafiles/deactivateType-default.xml +6 -0
- package/entities/Type/mockdatafiles/publishType-default.xml +6 -0
- package/entities/Type/mockdatafiles/setTypeConfiguration-default.xml +6 -0
- package/entities/Type/mockdatafiles/testType-default.xml +6 -0
- package/entities/Type/schema.json +7 -1
- package/error.json +12 -0
- package/metadata.json +44 -0
- package/package.json +28 -23
- package/pronghorn.json +8808 -1451
- package/propertiesDecorators.json +14 -0
- package/propertiesSchema.json +844 -8
- package/refs?service=git-upload-pack +0 -0
- package/report/adapter-openapi.json +25034 -0
- package/report/adapter-openapi.yaml +22498 -0
- package/report/adapterInfo.json +10 -0
- package/report/updateReport1691507502657.json +120 -0
- package/report/updateReport1692202523445.json +120 -0
- package/report/updateReport1694461395239.json +120 -0
- package/report/updateReport1698420779793.json +120 -0
- package/sampleProperties.json +158 -6
- package/storage/metrics.json +1141 -0
- package/test/integration/adapterTestBasicGet.js +4 -6
- package/test/integration/adapterTestConnectivity.js +91 -42
- package/test/integration/adapterTestIntegration.js +541 -108
- package/test/unit/adapterBaseTestUnit.js +393 -310
- package/test/unit/adapterTestUnit.js +1272 -222
- package/utils/adapterInfo.js +206 -0
- package/utils/addAuth.js +94 -0
- package/utils/artifactize.js +1 -1
- package/utils/basicGet.js +1 -14
- package/utils/checkMigrate.js +1 -1
- package/utils/entitiesToDB.js +179 -0
- package/utils/findPath.js +1 -1
- package/utils/methodDocumentor.js +273 -0
- package/utils/modify.js +14 -16
- package/utils/packModificationScript.js +2 -2
- package/utils/patches2bundledDeps.js +90 -0
- package/utils/pre-commit.sh +5 -0
- package/utils/removeHooks.js +20 -0
- package/utils/taskMover.js +309 -0
- package/utils/tbScript.js +129 -53
- package/utils/tbUtils.js +152 -35
- package/utils/testRunner.js +17 -17
- package/utils/troubleshootingAdapter.js +10 -31
- package/workflows/README.md +0 -3
|
@@ -4,36 +4,48 @@
|
|
|
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');
|
|
10
|
-
const fs = require('fs-extra');
|
|
11
|
-
const mocha = require('mocha');
|
|
12
11
|
const path = require('path');
|
|
13
12
|
const util = require('util');
|
|
14
|
-
const winston = require('winston');
|
|
15
13
|
const execute = require('child_process').execSync;
|
|
14
|
+
const fs = require('fs-extra');
|
|
15
|
+
const mocha = require('mocha');
|
|
16
|
+
const winston = require('winston');
|
|
16
17
|
const { expect } = require('chai');
|
|
17
18
|
const { use } = require('chai');
|
|
18
19
|
const td = require('testdouble');
|
|
20
|
+
const Ajv = require('ajv');
|
|
19
21
|
|
|
22
|
+
const ajv = new Ajv({ strictSchema: false, allErrors: true, allowUnionTypes: true });
|
|
20
23
|
const anything = td.matchers.anything();
|
|
21
|
-
|
|
22
|
-
// stub and attemptTimeout are used throughout the code so set them here
|
|
23
24
|
let logLevel = 'none';
|
|
24
|
-
const stub = true;
|
|
25
25
|
const isRapidFail = false;
|
|
26
|
-
|
|
26
|
+
|
|
27
|
+
// read in the properties from the sampleProperties files
|
|
28
|
+
let adaptdir = __dirname;
|
|
29
|
+
if (adaptdir.endsWith('/test/integration')) {
|
|
30
|
+
adaptdir = adaptdir.substring(0, adaptdir.length - 17);
|
|
31
|
+
} else if (adaptdir.endsWith('/test/unit')) {
|
|
32
|
+
adaptdir = adaptdir.substring(0, adaptdir.length - 10);
|
|
33
|
+
}
|
|
34
|
+
const samProps = require(`${adaptdir}/sampleProperties.json`).properties;
|
|
27
35
|
|
|
28
36
|
// these variables can be changed to run in integrated mode so easier to set them here
|
|
29
37
|
// always check these in with bogus data!!!
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
38
|
+
samProps.stub = true;
|
|
39
|
+
samProps.host = 'replace.hostorip.here';
|
|
40
|
+
samProps.authentication.username = 'username';
|
|
41
|
+
samProps.authentication.password = 'password';
|
|
42
|
+
samProps.protocol = 'http';
|
|
43
|
+
samProps.port = 80;
|
|
44
|
+
samProps.ssl.enabled = false;
|
|
45
|
+
samProps.ssl.accept_invalid_cert = false;
|
|
46
|
+
samProps.request.attempt_timeout = 1200000;
|
|
47
|
+
const attemptTimeout = samProps.request.attempt_timeout;
|
|
48
|
+
const { stub } = samProps;
|
|
37
49
|
|
|
38
50
|
// these are the adapter properties. You generally should not need to alter
|
|
39
51
|
// any of these after they are initially set up
|
|
@@ -43,104 +55,9 @@ global.pronghornProps = {
|
|
|
43
55
|
},
|
|
44
56
|
adapterProps: {
|
|
45
57
|
adapters: [{
|
|
46
|
-
id: 'Test-
|
|
47
|
-
type: '
|
|
48
|
-
properties:
|
|
49
|
-
host,
|
|
50
|
-
region: 'us-east-1',
|
|
51
|
-
port,
|
|
52
|
-
base_path: '/api',
|
|
53
|
-
version: 'v2016-11-15',
|
|
54
|
-
cache_location: 'none',
|
|
55
|
-
encode_pathvars: true,
|
|
56
|
-
save_metric: false,
|
|
57
|
-
stub,
|
|
58
|
-
protocol,
|
|
59
|
-
authentication: {
|
|
60
|
-
auth_method: 'no_authentication',
|
|
61
|
-
username,
|
|
62
|
-
password,
|
|
63
|
-
token: '',
|
|
64
|
-
invalid_token_error: 401,
|
|
65
|
-
token_timeout: -1,
|
|
66
|
-
token_cache: 'local',
|
|
67
|
-
auth_field: 'header.headers.Authorization',
|
|
68
|
-
auth_field_format: 'Basic {b64}{username}:{password}{/b64}',
|
|
69
|
-
auth_logging: false,
|
|
70
|
-
access_key: 'access',
|
|
71
|
-
secret_key: 'secret'
|
|
72
|
-
},
|
|
73
|
-
healthcheck: {
|
|
74
|
-
type: 'none',
|
|
75
|
-
frequency: 60000,
|
|
76
|
-
query_object: {}
|
|
77
|
-
},
|
|
78
|
-
throttle: {
|
|
79
|
-
throttle_enabled: false,
|
|
80
|
-
number_pronghorns: 1,
|
|
81
|
-
sync_async: 'sync',
|
|
82
|
-
max_in_queue: 1000,
|
|
83
|
-
concurrent_max: 1,
|
|
84
|
-
expire_timeout: 0,
|
|
85
|
-
avg_runtime: 200,
|
|
86
|
-
priorities: [
|
|
87
|
-
{
|
|
88
|
-
value: 0,
|
|
89
|
-
percent: 100
|
|
90
|
-
}
|
|
91
|
-
]
|
|
92
|
-
},
|
|
93
|
-
request: {
|
|
94
|
-
number_redirects: 0,
|
|
95
|
-
number_retries: 3,
|
|
96
|
-
limit_retry_error: 0,
|
|
97
|
-
failover_codes: [],
|
|
98
|
-
attempt_timeout: attemptTimeout,
|
|
99
|
-
global_request: {
|
|
100
|
-
payload: {},
|
|
101
|
-
uriOptions: {},
|
|
102
|
-
addlHeaders: {},
|
|
103
|
-
authData: {}
|
|
104
|
-
},
|
|
105
|
-
healthcheck_on_timeout: true,
|
|
106
|
-
return_raw: true,
|
|
107
|
-
archiving: false,
|
|
108
|
-
return_request: false
|
|
109
|
-
},
|
|
110
|
-
proxy: {
|
|
111
|
-
enabled: false,
|
|
112
|
-
host: '',
|
|
113
|
-
port: 1,
|
|
114
|
-
protocol: 'http',
|
|
115
|
-
username: '',
|
|
116
|
-
password: ''
|
|
117
|
-
},
|
|
118
|
-
ssl: {
|
|
119
|
-
ecdhCurve: '',
|
|
120
|
-
enabled: sslenable,
|
|
121
|
-
accept_invalid_cert: sslinvalid,
|
|
122
|
-
ca_file: '',
|
|
123
|
-
key_file: '',
|
|
124
|
-
cert_file: '',
|
|
125
|
-
secure_protocol: '',
|
|
126
|
-
ciphers: ''
|
|
127
|
-
},
|
|
128
|
-
mongo: {
|
|
129
|
-
host: '',
|
|
130
|
-
port: 0,
|
|
131
|
-
database: '',
|
|
132
|
-
username: '',
|
|
133
|
-
password: '',
|
|
134
|
-
replSet: '',
|
|
135
|
-
db_ssl: {
|
|
136
|
-
enabled: sslenable,
|
|
137
|
-
accept_invalid_cert: false,
|
|
138
|
-
ca_file: '',
|
|
139
|
-
key_file: '',
|
|
140
|
-
cert_file: ''
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
}
|
|
58
|
+
id: 'Test-aws_cloudformation',
|
|
59
|
+
type: 'aws_cloudformation',
|
|
60
|
+
properties: samProps
|
|
144
61
|
}]
|
|
145
62
|
}
|
|
146
63
|
};
|
|
@@ -201,7 +118,7 @@ function runErrorAsserts(data, error, code, origin, displayStr) {
|
|
|
201
118
|
}
|
|
202
119
|
|
|
203
120
|
// require the adapter that we are going to be using
|
|
204
|
-
const AwsCloudFormation = require('../../adapter
|
|
121
|
+
const AwsCloudFormation = require('../../adapter');
|
|
205
122
|
|
|
206
123
|
// delete the .DS_Store directory in entities -- otherwise this will cause errors
|
|
207
124
|
const dirPath = path.join(__dirname, '../../entities/.DS_Store');
|
|
@@ -243,6 +160,8 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
243
160
|
try {
|
|
244
161
|
assert.notEqual(null, a);
|
|
245
162
|
assert.notEqual(undefined, a);
|
|
163
|
+
const checkId = global.pronghornProps.adapterProps.adapters[0].id;
|
|
164
|
+
assert.equal(checkId, a.id);
|
|
246
165
|
assert.notEqual(null, a.allProps);
|
|
247
166
|
const check = global.pronghornProps.adapterProps.adapters[0].properties.healthcheck.type;
|
|
248
167
|
assert.equal(check, a.healthcheckType);
|
|
@@ -269,10 +188,10 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
269
188
|
});
|
|
270
189
|
|
|
271
190
|
let wffunctions = [];
|
|
272
|
-
describe('#
|
|
191
|
+
describe('#iapGetAdapterWorkflowFunctions', () => {
|
|
273
192
|
it('should retrieve workflow functions', (done) => {
|
|
274
193
|
try {
|
|
275
|
-
wffunctions = a.
|
|
194
|
+
wffunctions = a.iapGetAdapterWorkflowFunctions([]);
|
|
276
195
|
|
|
277
196
|
try {
|
|
278
197
|
assert.notEqual(0, wffunctions.length);
|
|
@@ -303,19 +222,24 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
303
222
|
it('package.json should be validated', (done) => {
|
|
304
223
|
try {
|
|
305
224
|
const packageDotJson = require('../../package.json');
|
|
306
|
-
|
|
307
|
-
const
|
|
308
|
-
|
|
309
|
-
|
|
225
|
+
// Define the JSON schema for package.json
|
|
226
|
+
const packageJsonSchema = {
|
|
227
|
+
type: 'object',
|
|
228
|
+
properties: {
|
|
229
|
+
name: { type: 'string' },
|
|
230
|
+
version: { type: 'string' }
|
|
231
|
+
// May need to add more properties as needed
|
|
232
|
+
},
|
|
233
|
+
required: ['name', 'version']
|
|
310
234
|
};
|
|
311
|
-
const
|
|
235
|
+
const validate = ajv.compile(packageJsonSchema);
|
|
236
|
+
const isValid = validate(packageDotJson);
|
|
312
237
|
|
|
313
|
-
if (
|
|
314
|
-
log.error('The package.json contains
|
|
315
|
-
|
|
316
|
-
assert.equal(true, results.valid);
|
|
238
|
+
if (isValid === false) {
|
|
239
|
+
log.error('The package.json contains errors');
|
|
240
|
+
assert.equal(true, isValid);
|
|
317
241
|
} else {
|
|
318
|
-
assert.equal(true,
|
|
242
|
+
assert.equal(true, isValid);
|
|
319
243
|
}
|
|
320
244
|
|
|
321
245
|
done();
|
|
@@ -324,13 +248,102 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
324
248
|
done(error);
|
|
325
249
|
}
|
|
326
250
|
});
|
|
327
|
-
it('package.json should be customized', (done) => {
|
|
251
|
+
it('package.json standard fields should be customized', (done) => {
|
|
328
252
|
try {
|
|
329
253
|
const packageDotJson = require('../../package.json');
|
|
330
254
|
assert.notEqual(-1, packageDotJson.name.indexOf('aws_cloudformation'));
|
|
331
255
|
assert.notEqual(undefined, packageDotJson.version);
|
|
332
256
|
assert.notEqual(null, packageDotJson.version);
|
|
333
257
|
assert.notEqual('', packageDotJson.version);
|
|
258
|
+
assert.notEqual(undefined, packageDotJson.description);
|
|
259
|
+
assert.notEqual(null, packageDotJson.description);
|
|
260
|
+
assert.notEqual('', packageDotJson.description);
|
|
261
|
+
assert.equal('adapter.js', packageDotJson.main);
|
|
262
|
+
assert.notEqual(undefined, packageDotJson.wizardVersion);
|
|
263
|
+
assert.notEqual(null, packageDotJson.wizardVersion);
|
|
264
|
+
assert.notEqual('', packageDotJson.wizardVersion);
|
|
265
|
+
assert.notEqual(undefined, packageDotJson.engineVersion);
|
|
266
|
+
assert.notEqual(null, packageDotJson.engineVersion);
|
|
267
|
+
assert.notEqual('', packageDotJson.engineVersion);
|
|
268
|
+
assert.equal('http', packageDotJson.adapterType);
|
|
269
|
+
done();
|
|
270
|
+
} catch (error) {
|
|
271
|
+
log.error(`Test Failure: ${error}`);
|
|
272
|
+
done(error);
|
|
273
|
+
}
|
|
274
|
+
});
|
|
275
|
+
it('package.json proper scripts should be provided', (done) => {
|
|
276
|
+
try {
|
|
277
|
+
const packageDotJson = require('../../package.json');
|
|
278
|
+
assert.notEqual(undefined, packageDotJson.scripts);
|
|
279
|
+
assert.notEqual(null, packageDotJson.scripts);
|
|
280
|
+
assert.notEqual('', packageDotJson.scripts);
|
|
281
|
+
assert.equal('node utils/setup.js', packageDotJson.scripts.preinstall);
|
|
282
|
+
assert.equal('node --max_old_space_size=4096 ./node_modules/eslint/bin/eslint.js . --ext .json --ext .js', packageDotJson.scripts.lint);
|
|
283
|
+
assert.equal('node --max_old_space_size=4096 ./node_modules/eslint/bin/eslint.js . --ext .json --ext .js --quiet', packageDotJson.scripts['lint:errors']);
|
|
284
|
+
assert.equal('mocha test/unit/adapterBaseTestUnit.js --LOG=error', packageDotJson.scripts['test:baseunit']);
|
|
285
|
+
assert.equal('mocha test/unit/adapterTestUnit.js --LOG=error', packageDotJson.scripts['test:unit']);
|
|
286
|
+
assert.equal('mocha test/integration/adapterTestIntegration.js --LOG=error', packageDotJson.scripts['test:integration']);
|
|
287
|
+
assert.equal('nyc --reporter html --reporter text mocha --reporter dot test/*', packageDotJson.scripts['test:cover']);
|
|
288
|
+
assert.equal('npm run test:baseunit && npm run test:unit && npm run test:integration', packageDotJson.scripts.test);
|
|
289
|
+
assert.equal('npm publish --registry=https://registry.npmjs.org --access=public', packageDotJson.scripts.deploy);
|
|
290
|
+
assert.equal('npm run deploy', packageDotJson.scripts.build);
|
|
291
|
+
done();
|
|
292
|
+
} catch (error) {
|
|
293
|
+
log.error(`Test Failure: ${error}`);
|
|
294
|
+
done(error);
|
|
295
|
+
}
|
|
296
|
+
});
|
|
297
|
+
it('package.json proper directories should be provided', (done) => {
|
|
298
|
+
try {
|
|
299
|
+
const packageDotJson = require('../../package.json');
|
|
300
|
+
assert.notEqual(undefined, packageDotJson.repository);
|
|
301
|
+
assert.notEqual(null, packageDotJson.repository);
|
|
302
|
+
assert.notEqual('', packageDotJson.repository);
|
|
303
|
+
assert.equal('git', packageDotJson.repository.type);
|
|
304
|
+
assert.equal('git@gitlab.com:itentialopensource/adapters/', packageDotJson.repository.url.substring(0, 43));
|
|
305
|
+
assert.equal('https://gitlab.com/itentialopensource/adapters/', packageDotJson.homepage.substring(0, 47));
|
|
306
|
+
done();
|
|
307
|
+
} catch (error) {
|
|
308
|
+
log.error(`Test Failure: ${error}`);
|
|
309
|
+
done(error);
|
|
310
|
+
}
|
|
311
|
+
});
|
|
312
|
+
it('package.json proper dependencies should be provided', (done) => {
|
|
313
|
+
try {
|
|
314
|
+
const packageDotJson = require('../../package.json');
|
|
315
|
+
assert.notEqual(undefined, packageDotJson.dependencies);
|
|
316
|
+
assert.notEqual(null, packageDotJson.dependencies);
|
|
317
|
+
assert.notEqual('', packageDotJson.dependencies);
|
|
318
|
+
assert.equal('^8.12.0', packageDotJson.dependencies.ajv);
|
|
319
|
+
assert.equal('^1.4.0', packageDotJson.dependencies.axios);
|
|
320
|
+
assert.equal('^11.0.0', packageDotJson.dependencies.commander);
|
|
321
|
+
assert.equal('^11.1.1', packageDotJson.dependencies['fs-extra']);
|
|
322
|
+
assert.equal('^10.2.0', packageDotJson.dependencies.mocha);
|
|
323
|
+
assert.equal('^2.0.1', packageDotJson.dependencies['mocha-param']);
|
|
324
|
+
assert.equal('^15.1.0', packageDotJson.dependencies.nyc);
|
|
325
|
+
assert.equal('^0.4.4', packageDotJson.dependencies.ping);
|
|
326
|
+
assert.equal('^1.4.10', packageDotJson.dependencies['readline-sync']);
|
|
327
|
+
assert.equal('^7.5.3', packageDotJson.dependencies.semver);
|
|
328
|
+
assert.equal('^3.9.0', packageDotJson.dependencies.winston);
|
|
329
|
+
done();
|
|
330
|
+
} catch (error) {
|
|
331
|
+
log.error(`Test Failure: ${error}`);
|
|
332
|
+
done(error);
|
|
333
|
+
}
|
|
334
|
+
});
|
|
335
|
+
it('package.json proper dev dependencies should be provided', (done) => {
|
|
336
|
+
try {
|
|
337
|
+
const packageDotJson = require('../../package.json');
|
|
338
|
+
assert.notEqual(undefined, packageDotJson.devDependencies);
|
|
339
|
+
assert.notEqual(null, packageDotJson.devDependencies);
|
|
340
|
+
assert.notEqual('', packageDotJson.devDependencies);
|
|
341
|
+
assert.equal('^4.3.7', packageDotJson.devDependencies.chai);
|
|
342
|
+
assert.equal('^8.44.0', packageDotJson.devDependencies.eslint);
|
|
343
|
+
assert.equal('^15.0.0', packageDotJson.devDependencies['eslint-config-airbnb-base']);
|
|
344
|
+
assert.equal('^2.27.5', packageDotJson.devDependencies['eslint-plugin-import']);
|
|
345
|
+
assert.equal('^3.1.0', packageDotJson.devDependencies['eslint-plugin-json']);
|
|
346
|
+
assert.equal('^3.18.0', packageDotJson.devDependencies.testdouble);
|
|
334
347
|
done();
|
|
335
348
|
} catch (error) {
|
|
336
349
|
log.error(`Test Failure: ${error}`);
|
|
@@ -355,8 +368,49 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
355
368
|
try {
|
|
356
369
|
const pronghornDotJson = require('../../pronghorn.json');
|
|
357
370
|
assert.notEqual(-1, pronghornDotJson.id.indexOf('aws_cloudformation'));
|
|
371
|
+
assert.equal('Adapter', pronghornDotJson.type);
|
|
358
372
|
assert.equal('AwsCloudFormation', pronghornDotJson.export);
|
|
359
373
|
assert.equal('AwsCloudFormation', pronghornDotJson.title);
|
|
374
|
+
assert.equal('adapter.js', pronghornDotJson.src);
|
|
375
|
+
done();
|
|
376
|
+
} catch (error) {
|
|
377
|
+
log.error(`Test Failure: ${error}`);
|
|
378
|
+
done(error);
|
|
379
|
+
}
|
|
380
|
+
});
|
|
381
|
+
it('pronghorn.json should contain generic adapter methods', (done) => {
|
|
382
|
+
try {
|
|
383
|
+
const pronghornDotJson = require('../../pronghorn.json');
|
|
384
|
+
assert.notEqual(undefined, pronghornDotJson.methods);
|
|
385
|
+
assert.notEqual(null, pronghornDotJson.methods);
|
|
386
|
+
assert.notEqual('', pronghornDotJson.methods);
|
|
387
|
+
assert.equal(true, Array.isArray(pronghornDotJson.methods));
|
|
388
|
+
assert.notEqual(0, pronghornDotJson.methods.length);
|
|
389
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapUpdateAdapterConfiguration'));
|
|
390
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapSuspendAdapter'));
|
|
391
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapUnsuspendAdapter'));
|
|
392
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapGetAdapterQueue'));
|
|
393
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapFindAdapterPath'));
|
|
394
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapTroubleshootAdapter'));
|
|
395
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapRunAdapterHealthcheck'));
|
|
396
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapRunAdapterConnectivity'));
|
|
397
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapRunAdapterBasicGet'));
|
|
398
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapMoveAdapterEntitiesToDB'));
|
|
399
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapDeactivateTasks'));
|
|
400
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapActivateTasks'));
|
|
401
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapPopulateEntityCache'));
|
|
402
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapRetrieveEntitiesCache'));
|
|
403
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'getDevice'));
|
|
404
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'getDevicesFiltered'));
|
|
405
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'isAlive'));
|
|
406
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'getConfig'));
|
|
407
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapGetDeviceCount'));
|
|
408
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapExpandedGenericAdapterRequest'));
|
|
409
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'genericAdapterRequest'));
|
|
410
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'genericAdapterRequestNoBasePath'));
|
|
411
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapRunAdapterLint'));
|
|
412
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapRunAdapterTests'));
|
|
413
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapGetAdapterInventory'));
|
|
360
414
|
done();
|
|
361
415
|
} catch (error) {
|
|
362
416
|
log.error(`Test Failure: ${error}`);
|
|
@@ -477,6 +531,39 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
477
531
|
done(error);
|
|
478
532
|
}
|
|
479
533
|
});
|
|
534
|
+
it('pronghorn.json verify input/output schema objects', (done) => {
|
|
535
|
+
const verifySchema = (methodName, schema) => {
|
|
536
|
+
try {
|
|
537
|
+
ajv.compile(schema);
|
|
538
|
+
} catch (error) {
|
|
539
|
+
const errorMessage = `Invalid schema found in '${methodName}' method.
|
|
540
|
+
Schema => ${JSON.stringify(schema)}.
|
|
541
|
+
Details => ${error.message}`;
|
|
542
|
+
throw new Error(errorMessage);
|
|
543
|
+
}
|
|
544
|
+
};
|
|
545
|
+
|
|
546
|
+
try {
|
|
547
|
+
const pronghornDotJson = require('../../pronghorn.json');
|
|
548
|
+
const { methods } = pronghornDotJson;
|
|
549
|
+
for (let i = 0; i < methods.length; i += 1) {
|
|
550
|
+
for (let j = 0; j < methods[i].input.length; j += 1) {
|
|
551
|
+
const inputSchema = methods[i].input[j].schema;
|
|
552
|
+
if (inputSchema) {
|
|
553
|
+
verifySchema(methods[i].name, inputSchema);
|
|
554
|
+
}
|
|
555
|
+
}
|
|
556
|
+
const outputSchema = methods[i].output.schema;
|
|
557
|
+
if (outputSchema) {
|
|
558
|
+
verifySchema(methods[i].name, outputSchema);
|
|
559
|
+
}
|
|
560
|
+
}
|
|
561
|
+
done();
|
|
562
|
+
} catch (error) {
|
|
563
|
+
log.error(`Adapter Exception: ${error}`);
|
|
564
|
+
done(error);
|
|
565
|
+
}
|
|
566
|
+
});
|
|
480
567
|
});
|
|
481
568
|
|
|
482
569
|
describe('propertiesSchema.json', () => {
|
|
@@ -495,6 +582,124 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
495
582
|
try {
|
|
496
583
|
const propertiesDotJson = require('../../propertiesSchema.json');
|
|
497
584
|
assert.equal('adapter-aws_cloudformation', propertiesDotJson.$id);
|
|
585
|
+
assert.equal('object', propertiesDotJson.type);
|
|
586
|
+
assert.equal('http://json-schema.org/draft-07/schema#', propertiesDotJson.$schema);
|
|
587
|
+
done();
|
|
588
|
+
} catch (error) {
|
|
589
|
+
log.error(`Test Failure: ${error}`);
|
|
590
|
+
done(error);
|
|
591
|
+
}
|
|
592
|
+
});
|
|
593
|
+
it('propertiesSchema.json should contain generic adapter properties', (done) => {
|
|
594
|
+
try {
|
|
595
|
+
const propertiesDotJson = require('../../propertiesSchema.json');
|
|
596
|
+
assert.notEqual(undefined, propertiesDotJson.properties);
|
|
597
|
+
assert.notEqual(null, propertiesDotJson.properties);
|
|
598
|
+
assert.notEqual('', propertiesDotJson.properties);
|
|
599
|
+
assert.equal('string', propertiesDotJson.properties.host.type);
|
|
600
|
+
assert.equal('integer', propertiesDotJson.properties.port.type);
|
|
601
|
+
assert.equal('boolean', propertiesDotJson.properties.stub.type);
|
|
602
|
+
assert.equal('string', propertiesDotJson.properties.protocol.type);
|
|
603
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.authentication);
|
|
604
|
+
assert.notEqual(null, propertiesDotJson.definitions.authentication);
|
|
605
|
+
assert.notEqual('', propertiesDotJson.definitions.authentication);
|
|
606
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.auth_method.type);
|
|
607
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.username.type);
|
|
608
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.password.type);
|
|
609
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.token.type);
|
|
610
|
+
assert.equal('integer', propertiesDotJson.definitions.authentication.properties.invalid_token_error.type);
|
|
611
|
+
assert.equal('integer', propertiesDotJson.definitions.authentication.properties.token_timeout.type);
|
|
612
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.token_cache.type);
|
|
613
|
+
assert.equal(true, Array.isArray(propertiesDotJson.definitions.authentication.properties.auth_field.type));
|
|
614
|
+
assert.equal(true, Array.isArray(propertiesDotJson.definitions.authentication.properties.auth_field_format.type));
|
|
615
|
+
assert.equal('boolean', propertiesDotJson.definitions.authentication.properties.auth_logging.type);
|
|
616
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.client_id.type);
|
|
617
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.client_secret.type);
|
|
618
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.grant_type.type);
|
|
619
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.ssl);
|
|
620
|
+
assert.notEqual(null, propertiesDotJson.definitions.ssl);
|
|
621
|
+
assert.notEqual('', propertiesDotJson.definitions.ssl);
|
|
622
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.ecdhCurve.type);
|
|
623
|
+
assert.equal('boolean', propertiesDotJson.definitions.ssl.properties.enabled.type);
|
|
624
|
+
assert.equal('boolean', propertiesDotJson.definitions.ssl.properties.accept_invalid_cert.type);
|
|
625
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.ca_file.type);
|
|
626
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.key_file.type);
|
|
627
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.cert_file.type);
|
|
628
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.secure_protocol.type);
|
|
629
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.ciphers.type);
|
|
630
|
+
assert.equal('string', propertiesDotJson.properties.base_path.type);
|
|
631
|
+
assert.equal('string', propertiesDotJson.properties.version.type);
|
|
632
|
+
assert.equal('string', propertiesDotJson.properties.cache_location.type);
|
|
633
|
+
assert.equal('boolean', propertiesDotJson.properties.encode_pathvars.type);
|
|
634
|
+
assert.equal('boolean', propertiesDotJson.properties.encode_queryvars.type);
|
|
635
|
+
assert.equal(true, Array.isArray(propertiesDotJson.properties.save_metric.type));
|
|
636
|
+
assert.notEqual(undefined, propertiesDotJson.definitions);
|
|
637
|
+
assert.notEqual(null, propertiesDotJson.definitions);
|
|
638
|
+
assert.notEqual('', propertiesDotJson.definitions);
|
|
639
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.healthcheck);
|
|
640
|
+
assert.notEqual(null, propertiesDotJson.definitions.healthcheck);
|
|
641
|
+
assert.notEqual('', propertiesDotJson.definitions.healthcheck);
|
|
642
|
+
assert.equal('string', propertiesDotJson.definitions.healthcheck.properties.type.type);
|
|
643
|
+
assert.equal('integer', propertiesDotJson.definitions.healthcheck.properties.frequency.type);
|
|
644
|
+
assert.equal('object', propertiesDotJson.definitions.healthcheck.properties.query_object.type);
|
|
645
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.throttle);
|
|
646
|
+
assert.notEqual(null, propertiesDotJson.definitions.throttle);
|
|
647
|
+
assert.notEqual('', propertiesDotJson.definitions.throttle);
|
|
648
|
+
assert.equal('boolean', propertiesDotJson.definitions.throttle.properties.throttle_enabled.type);
|
|
649
|
+
assert.equal('integer', propertiesDotJson.definitions.throttle.properties.number_pronghorns.type);
|
|
650
|
+
assert.equal('string', propertiesDotJson.definitions.throttle.properties.sync_async.type);
|
|
651
|
+
assert.equal('integer', propertiesDotJson.definitions.throttle.properties.max_in_queue.type);
|
|
652
|
+
assert.equal('integer', propertiesDotJson.definitions.throttle.properties.concurrent_max.type);
|
|
653
|
+
assert.equal('integer', propertiesDotJson.definitions.throttle.properties.expire_timeout.type);
|
|
654
|
+
assert.equal('integer', propertiesDotJson.definitions.throttle.properties.avg_runtime.type);
|
|
655
|
+
assert.equal('array', propertiesDotJson.definitions.throttle.properties.priorities.type);
|
|
656
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.request);
|
|
657
|
+
assert.notEqual(null, propertiesDotJson.definitions.request);
|
|
658
|
+
assert.notEqual('', propertiesDotJson.definitions.request);
|
|
659
|
+
assert.equal('integer', propertiesDotJson.definitions.request.properties.number_redirects.type);
|
|
660
|
+
assert.equal('integer', propertiesDotJson.definitions.request.properties.number_retries.type);
|
|
661
|
+
assert.equal(true, Array.isArray(propertiesDotJson.definitions.request.properties.limit_retry_error.type));
|
|
662
|
+
assert.equal('array', propertiesDotJson.definitions.request.properties.failover_codes.type);
|
|
663
|
+
assert.equal('integer', propertiesDotJson.definitions.request.properties.attempt_timeout.type);
|
|
664
|
+
assert.equal('object', propertiesDotJson.definitions.request.properties.global_request.type);
|
|
665
|
+
assert.equal('object', propertiesDotJson.definitions.request.properties.global_request.properties.payload.type);
|
|
666
|
+
assert.equal('object', propertiesDotJson.definitions.request.properties.global_request.properties.uriOptions.type);
|
|
667
|
+
assert.equal('object', propertiesDotJson.definitions.request.properties.global_request.properties.addlHeaders.type);
|
|
668
|
+
assert.equal('object', propertiesDotJson.definitions.request.properties.global_request.properties.authData.type);
|
|
669
|
+
assert.equal('boolean', propertiesDotJson.definitions.request.properties.healthcheck_on_timeout.type);
|
|
670
|
+
assert.equal('boolean', propertiesDotJson.definitions.request.properties.return_raw.type);
|
|
671
|
+
assert.equal('boolean', propertiesDotJson.definitions.request.properties.archiving.type);
|
|
672
|
+
assert.equal('boolean', propertiesDotJson.definitions.request.properties.return_request.type);
|
|
673
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.proxy);
|
|
674
|
+
assert.notEqual(null, propertiesDotJson.definitions.proxy);
|
|
675
|
+
assert.notEqual('', propertiesDotJson.definitions.proxy);
|
|
676
|
+
assert.equal('boolean', propertiesDotJson.definitions.proxy.properties.enabled.type);
|
|
677
|
+
assert.equal('string', propertiesDotJson.definitions.proxy.properties.host.type);
|
|
678
|
+
assert.equal('integer', propertiesDotJson.definitions.proxy.properties.port.type);
|
|
679
|
+
assert.equal('string', propertiesDotJson.definitions.proxy.properties.protocol.type);
|
|
680
|
+
assert.equal('string', propertiesDotJson.definitions.proxy.properties.username.type);
|
|
681
|
+
assert.equal('string', propertiesDotJson.definitions.proxy.properties.password.type);
|
|
682
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.mongo);
|
|
683
|
+
assert.notEqual(null, propertiesDotJson.definitions.mongo);
|
|
684
|
+
assert.notEqual('', propertiesDotJson.definitions.mongo);
|
|
685
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.host.type);
|
|
686
|
+
assert.equal('integer', propertiesDotJson.definitions.mongo.properties.port.type);
|
|
687
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.database.type);
|
|
688
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.username.type);
|
|
689
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.password.type);
|
|
690
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.replSet.type);
|
|
691
|
+
assert.equal('object', propertiesDotJson.definitions.mongo.properties.db_ssl.type);
|
|
692
|
+
assert.equal('boolean', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.enabled.type);
|
|
693
|
+
assert.equal('boolean', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.accept_invalid_cert.type);
|
|
694
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.ca_file.type);
|
|
695
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.key_file.type);
|
|
696
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.cert_file.type);
|
|
697
|
+
assert.notEqual('', propertiesDotJson.definitions.devicebroker);
|
|
698
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.getDevice.type);
|
|
699
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.getDevicesFiltered.type);
|
|
700
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.isAlive.type);
|
|
701
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.getConfig.type);
|
|
702
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.getCount.type);
|
|
498
703
|
done();
|
|
499
704
|
} catch (error) {
|
|
500
705
|
log.error(`Test Failure: ${error}`);
|
|
@@ -515,6 +720,50 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
515
720
|
done(error);
|
|
516
721
|
}
|
|
517
722
|
});
|
|
723
|
+
it('error.json should have standard adapter errors', (done) => {
|
|
724
|
+
try {
|
|
725
|
+
const errorDotJson = require('../../error.json');
|
|
726
|
+
assert.notEqual(undefined, errorDotJson.errors);
|
|
727
|
+
assert.notEqual(null, errorDotJson.errors);
|
|
728
|
+
assert.notEqual('', errorDotJson.errors);
|
|
729
|
+
assert.equal(true, Array.isArray(errorDotJson.errors));
|
|
730
|
+
assert.notEqual(0, errorDotJson.errors.length);
|
|
731
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.100'));
|
|
732
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.101'));
|
|
733
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.102'));
|
|
734
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.110'));
|
|
735
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.111'));
|
|
736
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.112'));
|
|
737
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.113'));
|
|
738
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.114'));
|
|
739
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.115'));
|
|
740
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.116'));
|
|
741
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.300'));
|
|
742
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.301'));
|
|
743
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.302'));
|
|
744
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.303'));
|
|
745
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.304'));
|
|
746
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.305'));
|
|
747
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.310'));
|
|
748
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.311'));
|
|
749
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.312'));
|
|
750
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.320'));
|
|
751
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.321'));
|
|
752
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.400'));
|
|
753
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.401'));
|
|
754
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.402'));
|
|
755
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.500'));
|
|
756
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.501'));
|
|
757
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.502'));
|
|
758
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.503'));
|
|
759
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.600'));
|
|
760
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.900'));
|
|
761
|
+
done();
|
|
762
|
+
} catch (error) {
|
|
763
|
+
log.error(`Test Failure: ${error}`);
|
|
764
|
+
done(error);
|
|
765
|
+
}
|
|
766
|
+
});
|
|
518
767
|
});
|
|
519
768
|
|
|
520
769
|
describe('sampleProperties.json', () => {
|
|
@@ -529,6 +778,123 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
529
778
|
done(error);
|
|
530
779
|
}
|
|
531
780
|
});
|
|
781
|
+
it('sampleProperties.json should contain generic adapter properties', (done) => {
|
|
782
|
+
try {
|
|
783
|
+
const sampleDotJson = require('../../sampleProperties.json');
|
|
784
|
+
assert.notEqual(-1, sampleDotJson.id.indexOf('aws_cloudformation'));
|
|
785
|
+
assert.equal('AwsCloudFormation', sampleDotJson.type);
|
|
786
|
+
assert.notEqual(undefined, sampleDotJson.properties);
|
|
787
|
+
assert.notEqual(null, sampleDotJson.properties);
|
|
788
|
+
assert.notEqual('', sampleDotJson.properties);
|
|
789
|
+
assert.notEqual(undefined, sampleDotJson.properties.host);
|
|
790
|
+
assert.notEqual(undefined, sampleDotJson.properties.port);
|
|
791
|
+
assert.notEqual(undefined, sampleDotJson.properties.stub);
|
|
792
|
+
assert.notEqual(undefined, sampleDotJson.properties.protocol);
|
|
793
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication);
|
|
794
|
+
assert.notEqual(null, sampleDotJson.properties.authentication);
|
|
795
|
+
assert.notEqual('', sampleDotJson.properties.authentication);
|
|
796
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.auth_method);
|
|
797
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.username);
|
|
798
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.password);
|
|
799
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.token);
|
|
800
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.invalid_token_error);
|
|
801
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.token_timeout);
|
|
802
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.token_cache);
|
|
803
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.auth_field);
|
|
804
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.auth_field_format);
|
|
805
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.auth_logging);
|
|
806
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.client_id);
|
|
807
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.client_secret);
|
|
808
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.grant_type);
|
|
809
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl);
|
|
810
|
+
assert.notEqual(null, sampleDotJson.properties.ssl);
|
|
811
|
+
assert.notEqual('', sampleDotJson.properties.ssl);
|
|
812
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.ecdhCurve);
|
|
813
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.enabled);
|
|
814
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.accept_invalid_cert);
|
|
815
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.ca_file);
|
|
816
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.key_file);
|
|
817
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.cert_file);
|
|
818
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.secure_protocol);
|
|
819
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.ciphers);
|
|
820
|
+
assert.notEqual(undefined, sampleDotJson.properties.base_path);
|
|
821
|
+
assert.notEqual(undefined, sampleDotJson.properties.version);
|
|
822
|
+
assert.notEqual(undefined, sampleDotJson.properties.cache_location);
|
|
823
|
+
assert.notEqual(undefined, sampleDotJson.properties.encode_pathvars);
|
|
824
|
+
assert.notEqual(undefined, sampleDotJson.properties.encode_queryvars);
|
|
825
|
+
assert.notEqual(undefined, sampleDotJson.properties.save_metric);
|
|
826
|
+
assert.notEqual(undefined, sampleDotJson.properties.healthcheck);
|
|
827
|
+
assert.notEqual(null, sampleDotJson.properties.healthcheck);
|
|
828
|
+
assert.notEqual('', sampleDotJson.properties.healthcheck);
|
|
829
|
+
assert.notEqual(undefined, sampleDotJson.properties.healthcheck.type);
|
|
830
|
+
assert.notEqual(undefined, sampleDotJson.properties.healthcheck.frequency);
|
|
831
|
+
assert.notEqual(undefined, sampleDotJson.properties.healthcheck.query_object);
|
|
832
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle);
|
|
833
|
+
assert.notEqual(null, sampleDotJson.properties.throttle);
|
|
834
|
+
assert.notEqual('', sampleDotJson.properties.throttle);
|
|
835
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.throttle_enabled);
|
|
836
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.number_pronghorns);
|
|
837
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.sync_async);
|
|
838
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.max_in_queue);
|
|
839
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.concurrent_max);
|
|
840
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.expire_timeout);
|
|
841
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.avg_runtime);
|
|
842
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.priorities);
|
|
843
|
+
assert.notEqual(undefined, sampleDotJson.properties.request);
|
|
844
|
+
assert.notEqual(null, sampleDotJson.properties.request);
|
|
845
|
+
assert.notEqual('', sampleDotJson.properties.request);
|
|
846
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.number_redirects);
|
|
847
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.number_retries);
|
|
848
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.limit_retry_error);
|
|
849
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.failover_codes);
|
|
850
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.attempt_timeout);
|
|
851
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.global_request);
|
|
852
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.global_request.payload);
|
|
853
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.global_request.uriOptions);
|
|
854
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.global_request.addlHeaders);
|
|
855
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.global_request.authData);
|
|
856
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.healthcheck_on_timeout);
|
|
857
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.return_raw);
|
|
858
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.archiving);
|
|
859
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.return_request);
|
|
860
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy);
|
|
861
|
+
assert.notEqual(null, sampleDotJson.properties.proxy);
|
|
862
|
+
assert.notEqual('', sampleDotJson.properties.proxy);
|
|
863
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy.enabled);
|
|
864
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy.host);
|
|
865
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy.port);
|
|
866
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy.protocol);
|
|
867
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy.username);
|
|
868
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy.password);
|
|
869
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo);
|
|
870
|
+
assert.notEqual(null, sampleDotJson.properties.mongo);
|
|
871
|
+
assert.notEqual('', sampleDotJson.properties.mongo);
|
|
872
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.host);
|
|
873
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.port);
|
|
874
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.database);
|
|
875
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.username);
|
|
876
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.password);
|
|
877
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.replSet);
|
|
878
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl);
|
|
879
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.enabled);
|
|
880
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.accept_invalid_cert);
|
|
881
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.ca_file);
|
|
882
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.key_file);
|
|
883
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.cert_file);
|
|
884
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker);
|
|
885
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.getDevice);
|
|
886
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.getDevicesFiltered);
|
|
887
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.isAlive);
|
|
888
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.getConfig);
|
|
889
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.getCount);
|
|
890
|
+
assert.notEqual(undefined, sampleDotJson.properties.cache);
|
|
891
|
+
assert.notEqual(undefined, sampleDotJson.properties.cache.entities);
|
|
892
|
+
done();
|
|
893
|
+
} catch (error) {
|
|
894
|
+
log.error(`Test Failure: ${error}`);
|
|
895
|
+
done(error);
|
|
896
|
+
}
|
|
897
|
+
});
|
|
532
898
|
});
|
|
533
899
|
|
|
534
900
|
describe('#checkProperties', () => {
|
|
@@ -616,6 +982,148 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
616
982
|
});
|
|
617
983
|
});
|
|
618
984
|
|
|
985
|
+
describe('#iapUpdateAdapterConfiguration', () => {
|
|
986
|
+
it('should have a iapUpdateAdapterConfiguration function', (done) => {
|
|
987
|
+
try {
|
|
988
|
+
assert.equal(true, typeof a.iapUpdateAdapterConfiguration === 'function');
|
|
989
|
+
done();
|
|
990
|
+
} catch (error) {
|
|
991
|
+
log.error(`Test Failure: ${error}`);
|
|
992
|
+
done(error);
|
|
993
|
+
}
|
|
994
|
+
});
|
|
995
|
+
});
|
|
996
|
+
|
|
997
|
+
describe('#iapSuspendAdapter', () => {
|
|
998
|
+
it('should have a iapSuspendAdapter function', (done) => {
|
|
999
|
+
try {
|
|
1000
|
+
assert.equal(true, typeof a.iapSuspendAdapter === 'function');
|
|
1001
|
+
done();
|
|
1002
|
+
} catch (error) {
|
|
1003
|
+
log.error(`Test Failure: ${error}`);
|
|
1004
|
+
done(error);
|
|
1005
|
+
}
|
|
1006
|
+
});
|
|
1007
|
+
});
|
|
1008
|
+
|
|
1009
|
+
describe('#iapUnsuspendAdapter', () => {
|
|
1010
|
+
it('should have a iapUnsuspendAdapter function', (done) => {
|
|
1011
|
+
try {
|
|
1012
|
+
assert.equal(true, typeof a.iapUnsuspendAdapter === 'function');
|
|
1013
|
+
done();
|
|
1014
|
+
} catch (error) {
|
|
1015
|
+
log.error(`Test Failure: ${error}`);
|
|
1016
|
+
done(error);
|
|
1017
|
+
}
|
|
1018
|
+
});
|
|
1019
|
+
});
|
|
1020
|
+
|
|
1021
|
+
describe('#iapGetAdapterQueue', () => {
|
|
1022
|
+
it('should have a iapGetAdapterQueue function', (done) => {
|
|
1023
|
+
try {
|
|
1024
|
+
assert.equal(true, typeof a.iapGetAdapterQueue === 'function');
|
|
1025
|
+
done();
|
|
1026
|
+
} catch (error) {
|
|
1027
|
+
log.error(`Test Failure: ${error}`);
|
|
1028
|
+
done(error);
|
|
1029
|
+
}
|
|
1030
|
+
});
|
|
1031
|
+
});
|
|
1032
|
+
|
|
1033
|
+
describe('#iapFindAdapterPath', () => {
|
|
1034
|
+
it('should have a iapFindAdapterPath function', (done) => {
|
|
1035
|
+
try {
|
|
1036
|
+
assert.equal(true, typeof a.iapFindAdapterPath === 'function');
|
|
1037
|
+
done();
|
|
1038
|
+
} catch (error) {
|
|
1039
|
+
log.error(`Test Failure: ${error}`);
|
|
1040
|
+
done(error);
|
|
1041
|
+
}
|
|
1042
|
+
});
|
|
1043
|
+
it('iapFindAdapterPath should find atleast one path that matches', (done) => {
|
|
1044
|
+
try {
|
|
1045
|
+
a.iapFindAdapterPath('{base_path}/{version}', (data, error) => {
|
|
1046
|
+
try {
|
|
1047
|
+
assert.equal(undefined, error);
|
|
1048
|
+
assert.notEqual(undefined, data);
|
|
1049
|
+
assert.notEqual(null, data);
|
|
1050
|
+
assert.equal(true, data.found);
|
|
1051
|
+
assert.notEqual(undefined, data.foundIn);
|
|
1052
|
+
assert.notEqual(null, data.foundIn);
|
|
1053
|
+
assert.notEqual(0, data.foundIn.length);
|
|
1054
|
+
done();
|
|
1055
|
+
} catch (err) {
|
|
1056
|
+
log.error(`Test Failure: ${err}`);
|
|
1057
|
+
done(err);
|
|
1058
|
+
}
|
|
1059
|
+
});
|
|
1060
|
+
} catch (error) {
|
|
1061
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1062
|
+
done(error);
|
|
1063
|
+
}
|
|
1064
|
+
}).timeout(attemptTimeout);
|
|
1065
|
+
});
|
|
1066
|
+
|
|
1067
|
+
describe('#iapTroubleshootAdapter', () => {
|
|
1068
|
+
it('should have a iapTroubleshootAdapter function', (done) => {
|
|
1069
|
+
try {
|
|
1070
|
+
assert.equal(true, typeof a.iapTroubleshootAdapter === 'function');
|
|
1071
|
+
done();
|
|
1072
|
+
} catch (error) {
|
|
1073
|
+
log.error(`Test Failure: ${error}`);
|
|
1074
|
+
done(error);
|
|
1075
|
+
}
|
|
1076
|
+
});
|
|
1077
|
+
});
|
|
1078
|
+
|
|
1079
|
+
describe('#iapRunAdapterHealthcheck', () => {
|
|
1080
|
+
it('should have a iapRunAdapterHealthcheck function', (done) => {
|
|
1081
|
+
try {
|
|
1082
|
+
assert.equal(true, typeof a.iapRunAdapterHealthcheck === 'function');
|
|
1083
|
+
done();
|
|
1084
|
+
} catch (error) {
|
|
1085
|
+
log.error(`Test Failure: ${error}`);
|
|
1086
|
+
done(error);
|
|
1087
|
+
}
|
|
1088
|
+
});
|
|
1089
|
+
});
|
|
1090
|
+
|
|
1091
|
+
describe('#iapRunAdapterConnectivity', () => {
|
|
1092
|
+
it('should have a iapRunAdapterConnectivity function', (done) => {
|
|
1093
|
+
try {
|
|
1094
|
+
assert.equal(true, typeof a.iapRunAdapterConnectivity === 'function');
|
|
1095
|
+
done();
|
|
1096
|
+
} catch (error) {
|
|
1097
|
+
log.error(`Test Failure: ${error}`);
|
|
1098
|
+
done(error);
|
|
1099
|
+
}
|
|
1100
|
+
});
|
|
1101
|
+
});
|
|
1102
|
+
|
|
1103
|
+
describe('#iapRunAdapterBasicGet', () => {
|
|
1104
|
+
it('should have a iapRunAdapterBasicGet function', (done) => {
|
|
1105
|
+
try {
|
|
1106
|
+
assert.equal(true, typeof a.iapRunAdapterBasicGet === 'function');
|
|
1107
|
+
done();
|
|
1108
|
+
} catch (error) {
|
|
1109
|
+
log.error(`Test Failure: ${error}`);
|
|
1110
|
+
done(error);
|
|
1111
|
+
}
|
|
1112
|
+
});
|
|
1113
|
+
});
|
|
1114
|
+
|
|
1115
|
+
describe('#iapMoveAdapterEntitiesToDB', () => {
|
|
1116
|
+
it('should have a iapMoveAdapterEntitiesToDB function', (done) => {
|
|
1117
|
+
try {
|
|
1118
|
+
assert.equal(true, typeof a.iapMoveAdapterEntitiesToDB === 'function');
|
|
1119
|
+
done();
|
|
1120
|
+
} catch (error) {
|
|
1121
|
+
log.error(`Test Failure: ${error}`);
|
|
1122
|
+
done(error);
|
|
1123
|
+
}
|
|
1124
|
+
});
|
|
1125
|
+
});
|
|
1126
|
+
|
|
619
1127
|
describe('#checkActionFiles', () => {
|
|
620
1128
|
it('should have a checkActionFiles function', (done) => {
|
|
621
1129
|
try {
|
|
@@ -701,50 +1209,293 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
701
1209
|
}).timeout(attemptTimeout);
|
|
702
1210
|
});
|
|
703
1211
|
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
// try {
|
|
716
|
-
// a.hasEntity('template_entity', // 'a9e9c33dc61122760072455df62663d2', (data) => {
|
|
717
|
-
// try {
|
|
718
|
-
// assert.equal(true, data[0]);
|
|
719
|
-
// done();
|
|
720
|
-
// } catch (err) {
|
|
721
|
-
// log.error(`Test Failure: ${err}`);
|
|
722
|
-
// done(err);
|
|
723
|
-
// }
|
|
724
|
-
// });
|
|
725
|
-
// } catch (error) {
|
|
726
|
-
// log.error(`Adapter Exception: ${error}`);
|
|
727
|
-
// done(error);
|
|
728
|
-
// }
|
|
729
|
-
// }).timeout(attemptTimeout);
|
|
730
|
-
// it('should not find entity', (done) => {
|
|
731
|
-
// try {
|
|
732
|
-
// a.hasEntity('template_entity', 'blah', (data) => {
|
|
733
|
-
// try {
|
|
734
|
-
// assert.equal(false, data[0]);
|
|
735
|
-
// done();
|
|
736
|
-
// } catch (err) {
|
|
737
|
-
// log.error(`Test Failure: ${err}`);
|
|
738
|
-
// done(err);
|
|
739
|
-
// }
|
|
740
|
-
// });
|
|
741
|
-
// } catch (error) {
|
|
742
|
-
// log.error(`Adapter Exception: ${error}`);
|
|
743
|
-
// done(error);
|
|
744
|
-
// }
|
|
745
|
-
// }).timeout(attemptTimeout);
|
|
746
|
-
// });
|
|
1212
|
+
describe('#iapDeactivateTasks', () => {
|
|
1213
|
+
it('should have a iapDeactivateTasks function', (done) => {
|
|
1214
|
+
try {
|
|
1215
|
+
assert.equal(true, typeof a.iapDeactivateTasks === 'function');
|
|
1216
|
+
done();
|
|
1217
|
+
} catch (error) {
|
|
1218
|
+
log.error(`Test Failure: ${error}`);
|
|
1219
|
+
done(error);
|
|
1220
|
+
}
|
|
1221
|
+
});
|
|
1222
|
+
});
|
|
747
1223
|
|
|
1224
|
+
describe('#iapActivateTasks', () => {
|
|
1225
|
+
it('should have a iapActivateTasks function', (done) => {
|
|
1226
|
+
try {
|
|
1227
|
+
assert.equal(true, typeof a.iapActivateTasks === 'function');
|
|
1228
|
+
done();
|
|
1229
|
+
} catch (error) {
|
|
1230
|
+
log.error(`Test Failure: ${error}`);
|
|
1231
|
+
done(error);
|
|
1232
|
+
}
|
|
1233
|
+
});
|
|
1234
|
+
});
|
|
1235
|
+
|
|
1236
|
+
describe('#iapPopulateEntityCache', () => {
|
|
1237
|
+
it('should have a iapPopulateEntityCache function', (done) => {
|
|
1238
|
+
try {
|
|
1239
|
+
assert.equal(true, typeof a.iapPopulateEntityCache === 'function');
|
|
1240
|
+
done();
|
|
1241
|
+
} catch (error) {
|
|
1242
|
+
log.error(`Test Failure: ${error}`);
|
|
1243
|
+
done(error);
|
|
1244
|
+
}
|
|
1245
|
+
});
|
|
1246
|
+
});
|
|
1247
|
+
|
|
1248
|
+
describe('#iapRetrieveEntitiesCache', () => {
|
|
1249
|
+
it('should have a iapRetrieveEntitiesCache function', (done) => {
|
|
1250
|
+
try {
|
|
1251
|
+
assert.equal(true, typeof a.iapRetrieveEntitiesCache === 'function');
|
|
1252
|
+
done();
|
|
1253
|
+
} catch (error) {
|
|
1254
|
+
log.error(`Test Failure: ${error}`);
|
|
1255
|
+
done(error);
|
|
1256
|
+
}
|
|
1257
|
+
});
|
|
1258
|
+
});
|
|
1259
|
+
|
|
1260
|
+
describe('#hasEntities', () => {
|
|
1261
|
+
it('should have a hasEntities function', (done) => {
|
|
1262
|
+
try {
|
|
1263
|
+
assert.equal(true, typeof a.hasEntities === 'function');
|
|
1264
|
+
done();
|
|
1265
|
+
} catch (error) {
|
|
1266
|
+
log.error(`Test Failure: ${error}`);
|
|
1267
|
+
done(error);
|
|
1268
|
+
}
|
|
1269
|
+
});
|
|
1270
|
+
});
|
|
1271
|
+
|
|
1272
|
+
describe('#getDevice', () => {
|
|
1273
|
+
it('should have a getDevice function', (done) => {
|
|
1274
|
+
try {
|
|
1275
|
+
assert.equal(true, typeof a.getDevice === 'function');
|
|
1276
|
+
done();
|
|
1277
|
+
} catch (error) {
|
|
1278
|
+
log.error(`Test Failure: ${error}`);
|
|
1279
|
+
done(error);
|
|
1280
|
+
}
|
|
1281
|
+
});
|
|
1282
|
+
});
|
|
1283
|
+
|
|
1284
|
+
describe('#getDevicesFiltered', () => {
|
|
1285
|
+
it('should have a getDevicesFiltered function', (done) => {
|
|
1286
|
+
try {
|
|
1287
|
+
assert.equal(true, typeof a.getDevicesFiltered === 'function');
|
|
1288
|
+
done();
|
|
1289
|
+
} catch (error) {
|
|
1290
|
+
log.error(`Test Failure: ${error}`);
|
|
1291
|
+
done(error);
|
|
1292
|
+
}
|
|
1293
|
+
});
|
|
1294
|
+
});
|
|
1295
|
+
|
|
1296
|
+
describe('#isAlive', () => {
|
|
1297
|
+
it('should have a isAlive function', (done) => {
|
|
1298
|
+
try {
|
|
1299
|
+
assert.equal(true, typeof a.isAlive === 'function');
|
|
1300
|
+
done();
|
|
1301
|
+
} catch (error) {
|
|
1302
|
+
log.error(`Test Failure: ${error}`);
|
|
1303
|
+
done(error);
|
|
1304
|
+
}
|
|
1305
|
+
});
|
|
1306
|
+
});
|
|
1307
|
+
|
|
1308
|
+
describe('#getConfig', () => {
|
|
1309
|
+
it('should have a getConfig function', (done) => {
|
|
1310
|
+
try {
|
|
1311
|
+
assert.equal(true, typeof a.getConfig === 'function');
|
|
1312
|
+
done();
|
|
1313
|
+
} catch (error) {
|
|
1314
|
+
log.error(`Test Failure: ${error}`);
|
|
1315
|
+
done(error);
|
|
1316
|
+
}
|
|
1317
|
+
});
|
|
1318
|
+
});
|
|
1319
|
+
|
|
1320
|
+
describe('#iapGetDeviceCount', () => {
|
|
1321
|
+
it('should have a iapGetDeviceCount function', (done) => {
|
|
1322
|
+
try {
|
|
1323
|
+
assert.equal(true, typeof a.iapGetDeviceCount === 'function');
|
|
1324
|
+
done();
|
|
1325
|
+
} catch (error) {
|
|
1326
|
+
log.error(`Test Failure: ${error}`);
|
|
1327
|
+
done(error);
|
|
1328
|
+
}
|
|
1329
|
+
});
|
|
1330
|
+
});
|
|
1331
|
+
|
|
1332
|
+
describe('#iapExpandedGenericAdapterRequest', () => {
|
|
1333
|
+
it('should have a iapExpandedGenericAdapterRequest function', (done) => {
|
|
1334
|
+
try {
|
|
1335
|
+
assert.equal(true, typeof a.iapExpandedGenericAdapterRequest === 'function');
|
|
1336
|
+
done();
|
|
1337
|
+
} catch (error) {
|
|
1338
|
+
log.error(`Test Failure: ${error}`);
|
|
1339
|
+
done(error);
|
|
1340
|
+
}
|
|
1341
|
+
});
|
|
1342
|
+
});
|
|
1343
|
+
|
|
1344
|
+
describe('#genericAdapterRequest', () => {
|
|
1345
|
+
it('should have a genericAdapterRequest function', (done) => {
|
|
1346
|
+
try {
|
|
1347
|
+
assert.equal(true, typeof a.genericAdapterRequest === 'function');
|
|
1348
|
+
done();
|
|
1349
|
+
} catch (error) {
|
|
1350
|
+
log.error(`Test Failure: ${error}`);
|
|
1351
|
+
done(error);
|
|
1352
|
+
}
|
|
1353
|
+
});
|
|
1354
|
+
});
|
|
1355
|
+
|
|
1356
|
+
describe('#genericAdapterRequestNoBasePath', () => {
|
|
1357
|
+
it('should have a genericAdapterRequestNoBasePath function', (done) => {
|
|
1358
|
+
try {
|
|
1359
|
+
assert.equal(true, typeof a.genericAdapterRequestNoBasePath === 'function');
|
|
1360
|
+
done();
|
|
1361
|
+
} catch (error) {
|
|
1362
|
+
log.error(`Test Failure: ${error}`);
|
|
1363
|
+
done(error);
|
|
1364
|
+
}
|
|
1365
|
+
});
|
|
1366
|
+
});
|
|
1367
|
+
|
|
1368
|
+
describe('#iapRunAdapterLint', () => {
|
|
1369
|
+
it('should have a iapRunAdapterLint function', (done) => {
|
|
1370
|
+
try {
|
|
1371
|
+
assert.equal(true, typeof a.iapRunAdapterLint === 'function');
|
|
1372
|
+
done();
|
|
1373
|
+
} catch (error) {
|
|
1374
|
+
log.error(`Test Failure: ${error}`);
|
|
1375
|
+
done(error);
|
|
1376
|
+
}
|
|
1377
|
+
});
|
|
1378
|
+
it('retrieve the lint results', (done) => {
|
|
1379
|
+
try {
|
|
1380
|
+
a.iapRunAdapterLint((data, error) => {
|
|
1381
|
+
try {
|
|
1382
|
+
assert.equal(undefined, error);
|
|
1383
|
+
assert.notEqual(undefined, data);
|
|
1384
|
+
assert.notEqual(null, data);
|
|
1385
|
+
assert.notEqual(undefined, data.status);
|
|
1386
|
+
assert.notEqual(null, data.status);
|
|
1387
|
+
assert.equal('SUCCESS', data.status);
|
|
1388
|
+
done();
|
|
1389
|
+
} catch (err) {
|
|
1390
|
+
log.error(`Test Failure: ${err}`);
|
|
1391
|
+
done(err);
|
|
1392
|
+
}
|
|
1393
|
+
});
|
|
1394
|
+
} catch (error) {
|
|
1395
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1396
|
+
done(error);
|
|
1397
|
+
}
|
|
1398
|
+
}).timeout(attemptTimeout);
|
|
1399
|
+
});
|
|
1400
|
+
|
|
1401
|
+
describe('#iapRunAdapterTests', () => {
|
|
1402
|
+
it('should have a iapRunAdapterTests function', (done) => {
|
|
1403
|
+
try {
|
|
1404
|
+
assert.equal(true, typeof a.iapRunAdapterTests === 'function');
|
|
1405
|
+
done();
|
|
1406
|
+
} catch (error) {
|
|
1407
|
+
log.error(`Test Failure: ${error}`);
|
|
1408
|
+
done(error);
|
|
1409
|
+
}
|
|
1410
|
+
});
|
|
1411
|
+
});
|
|
1412
|
+
|
|
1413
|
+
describe('#iapGetAdapterInventory', () => {
|
|
1414
|
+
it('should have a iapGetAdapterInventory function', (done) => {
|
|
1415
|
+
try {
|
|
1416
|
+
assert.equal(true, typeof a.iapGetAdapterInventory === 'function');
|
|
1417
|
+
done();
|
|
1418
|
+
} catch (error) {
|
|
1419
|
+
log.error(`Test Failure: ${error}`);
|
|
1420
|
+
done(error);
|
|
1421
|
+
}
|
|
1422
|
+
});
|
|
1423
|
+
it('retrieve the inventory', (done) => {
|
|
1424
|
+
try {
|
|
1425
|
+
a.iapGetAdapterInventory((data, error) => {
|
|
1426
|
+
try {
|
|
1427
|
+
assert.equal(undefined, error);
|
|
1428
|
+
assert.notEqual(undefined, data);
|
|
1429
|
+
assert.notEqual(null, data);
|
|
1430
|
+
done();
|
|
1431
|
+
} catch (err) {
|
|
1432
|
+
log.error(`Test Failure: ${err}`);
|
|
1433
|
+
done(err);
|
|
1434
|
+
}
|
|
1435
|
+
});
|
|
1436
|
+
} catch (error) {
|
|
1437
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1438
|
+
done(error);
|
|
1439
|
+
}
|
|
1440
|
+
}).timeout(attemptTimeout);
|
|
1441
|
+
});
|
|
1442
|
+
describe('metadata.json', () => {
|
|
1443
|
+
it('should have a metadata.json', (done) => {
|
|
1444
|
+
try {
|
|
1445
|
+
fs.exists('metadata.json', (val) => {
|
|
1446
|
+
assert.equal(true, val);
|
|
1447
|
+
done();
|
|
1448
|
+
});
|
|
1449
|
+
} catch (error) {
|
|
1450
|
+
log.error(`Test Failure: ${error}`);
|
|
1451
|
+
done(error);
|
|
1452
|
+
}
|
|
1453
|
+
});
|
|
1454
|
+
it('metadata.json is customized', (done) => {
|
|
1455
|
+
try {
|
|
1456
|
+
const metadataDotJson = require('../../metadata.json');
|
|
1457
|
+
assert.equal('adapter-aws_cloudformation', metadataDotJson.name);
|
|
1458
|
+
assert.notEqual(undefined, metadataDotJson.webName);
|
|
1459
|
+
assert.notEqual(null, metadataDotJson.webName);
|
|
1460
|
+
assert.notEqual('', metadataDotJson.webName);
|
|
1461
|
+
assert.equal('Adapter', metadataDotJson.type);
|
|
1462
|
+
done();
|
|
1463
|
+
} catch (error) {
|
|
1464
|
+
log.error(`Test Failure: ${error}`);
|
|
1465
|
+
done(error);
|
|
1466
|
+
}
|
|
1467
|
+
});
|
|
1468
|
+
it('metadata.json contains accurate documentation', (done) => {
|
|
1469
|
+
try {
|
|
1470
|
+
const metadataDotJson = require('../../metadata.json');
|
|
1471
|
+
assert.notEqual(undefined, metadataDotJson.documentation);
|
|
1472
|
+
assert.equal('https://www.npmjs.com/package/@itentialopensource/adapter-aws_cloudformation', metadataDotJson.documentation.npmLink);
|
|
1473
|
+
assert.equal('https://docs.itential.com/opensource/docs/troubleshooting-an-adapter', metadataDotJson.documentation.faqLink);
|
|
1474
|
+
assert.equal('https://gitlab.com/itentialopensource/adapters/contributing-guide', metadataDotJson.documentation.contributeLink);
|
|
1475
|
+
assert.equal('https://itential.atlassian.net/servicedesk/customer/portals', metadataDotJson.documentation.issueLink);
|
|
1476
|
+
done();
|
|
1477
|
+
} catch (error) {
|
|
1478
|
+
log.error(`Test Failure: ${error}`);
|
|
1479
|
+
done(error);
|
|
1480
|
+
}
|
|
1481
|
+
});
|
|
1482
|
+
it('metadata.json has related items', (done) => {
|
|
1483
|
+
try {
|
|
1484
|
+
const metadataDotJson = require('../../metadata.json');
|
|
1485
|
+
assert.notEqual(undefined, metadataDotJson.relatedItems);
|
|
1486
|
+
assert.notEqual(undefined, metadataDotJson.relatedItems.adapters);
|
|
1487
|
+
assert.notEqual(undefined, metadataDotJson.relatedItems.integrations);
|
|
1488
|
+
assert.notEqual(undefined, metadataDotJson.relatedItems.ecosystemApplications);
|
|
1489
|
+
assert.notEqual(undefined, metadataDotJson.relatedItems.workflowProjects);
|
|
1490
|
+
assert.notEqual(undefined, metadataDotJson.relatedItems.transformationProjects);
|
|
1491
|
+
assert.notEqual(undefined, metadataDotJson.relatedItems.exampleProjects);
|
|
1492
|
+
done();
|
|
1493
|
+
} catch (error) {
|
|
1494
|
+
log.error(`Test Failure: ${error}`);
|
|
1495
|
+
done(error);
|
|
1496
|
+
}
|
|
1497
|
+
});
|
|
1498
|
+
});
|
|
748
1499
|
/*
|
|
749
1500
|
-----------------------------------------------------------------------
|
|
750
1501
|
-----------------------------------------------------------------------
|
|
@@ -793,7 +1544,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
793
1544
|
a.createStack(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, (data, error) => {
|
|
794
1545
|
try {
|
|
795
1546
|
const displayE = 'stackName is required';
|
|
796
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1547
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-createStackSTSRole', displayE);
|
|
797
1548
|
done();
|
|
798
1549
|
} catch (err) {
|
|
799
1550
|
log.error(`Test Failure: ${err}`);
|
|
@@ -822,7 +1573,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
822
1573
|
a.updateStack(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, (data, error) => {
|
|
823
1574
|
try {
|
|
824
1575
|
const displayE = 'stackName is required';
|
|
825
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1576
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-updateStackSTSRole', displayE);
|
|
826
1577
|
done();
|
|
827
1578
|
} catch (err) {
|
|
828
1579
|
log.error(`Test Failure: ${err}`);
|
|
@@ -851,7 +1602,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
851
1602
|
a.updateTerminationProtection(null, null, (data, error) => {
|
|
852
1603
|
try {
|
|
853
1604
|
const displayE = 'stackName is required';
|
|
854
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1605
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-updateTerminationProtectionSTSRole', displayE);
|
|
855
1606
|
done();
|
|
856
1607
|
} catch (err) {
|
|
857
1608
|
log.error(`Test Failure: ${err}`);
|
|
@@ -868,7 +1619,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
868
1619
|
a.updateTerminationProtection('fake data', null, (data, error) => {
|
|
869
1620
|
try {
|
|
870
1621
|
const displayE = 'enableTerminationProtection is required';
|
|
871
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1622
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-updateTerminationProtectionSTSRole', displayE);
|
|
872
1623
|
done();
|
|
873
1624
|
} catch (err) {
|
|
874
1625
|
log.error(`Test Failure: ${err}`);
|
|
@@ -897,7 +1648,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
897
1648
|
a.deleteStack(null, null, null, null, (data, error) => {
|
|
898
1649
|
try {
|
|
899
1650
|
const displayE = 'stackName is required';
|
|
900
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1651
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-deleteStackSTSRole', displayE);
|
|
901
1652
|
done();
|
|
902
1653
|
} catch (err) {
|
|
903
1654
|
log.error(`Test Failure: ${err}`);
|
|
@@ -926,7 +1677,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
926
1677
|
a.listStackInstances(null, null, null, null, null, (data, error) => {
|
|
927
1678
|
try {
|
|
928
1679
|
const displayE = 'stackSetName is required';
|
|
929
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1680
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-listStackInstancesSTSRole', displayE);
|
|
930
1681
|
done();
|
|
931
1682
|
} catch (err) {
|
|
932
1683
|
log.error(`Test Failure: ${err}`);
|
|
@@ -955,7 +1706,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
955
1706
|
a.describeStackInstance(null, null, null, (data, error) => {
|
|
956
1707
|
try {
|
|
957
1708
|
const displayE = 'stackSetName is required';
|
|
958
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1709
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeStackInstanceSTSRole', displayE);
|
|
959
1710
|
done();
|
|
960
1711
|
} catch (err) {
|
|
961
1712
|
log.error(`Test Failure: ${err}`);
|
|
@@ -972,7 +1723,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
972
1723
|
a.describeStackInstance('fake data', null, null, (data, error) => {
|
|
973
1724
|
try {
|
|
974
1725
|
const displayE = 'stackInstanceAccount is required';
|
|
975
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1726
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeStackInstanceSTSRole', displayE);
|
|
976
1727
|
done();
|
|
977
1728
|
} catch (err) {
|
|
978
1729
|
log.error(`Test Failure: ${err}`);
|
|
@@ -989,7 +1740,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
989
1740
|
a.describeStackInstance('fake data', 'fake data', null, (data, error) => {
|
|
990
1741
|
try {
|
|
991
1742
|
const displayE = 'stackInstanceRegion is required';
|
|
992
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1743
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeStackInstanceSTSRole', displayE);
|
|
993
1744
|
done();
|
|
994
1745
|
} catch (err) {
|
|
995
1746
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1018,7 +1769,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1018
1769
|
a.createStackInstances(null, null, null, null, null, null, null, (data, error) => {
|
|
1019
1770
|
try {
|
|
1020
1771
|
const displayE = 'stackSetName is required';
|
|
1021
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1772
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-createStackInstancesSTSRole', displayE);
|
|
1022
1773
|
done();
|
|
1023
1774
|
} catch (err) {
|
|
1024
1775
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1035,7 +1786,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1035
1786
|
a.createStackInstances('fake data', null, null, null, null, null, null, (data, error) => {
|
|
1036
1787
|
try {
|
|
1037
1788
|
const displayE = 'regions is required';
|
|
1038
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1789
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-createStackInstancesSTSRole', displayE);
|
|
1039
1790
|
done();
|
|
1040
1791
|
} catch (err) {
|
|
1041
1792
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1064,7 +1815,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1064
1815
|
a.updateStackInstances(null, null, null, null, null, null, null, (data, error) => {
|
|
1065
1816
|
try {
|
|
1066
1817
|
const displayE = 'stackSetName is required';
|
|
1067
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1818
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-updateStackInstancesSTSRole', displayE);
|
|
1068
1819
|
done();
|
|
1069
1820
|
} catch (err) {
|
|
1070
1821
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1081,7 +1832,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1081
1832
|
a.updateStackInstances('fake data', null, null, null, null, null, null, (data, error) => {
|
|
1082
1833
|
try {
|
|
1083
1834
|
const displayE = 'regions is required';
|
|
1084
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1835
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-updateStackInstancesSTSRole', displayE);
|
|
1085
1836
|
done();
|
|
1086
1837
|
} catch (err) {
|
|
1087
1838
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1110,7 +1861,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1110
1861
|
a.deleteStackInstances(null, null, null, null, null, null, null, (data, error) => {
|
|
1111
1862
|
try {
|
|
1112
1863
|
const displayE = 'stackSetName is required';
|
|
1113
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1864
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-deleteStackInstancesSTSRole', displayE);
|
|
1114
1865
|
done();
|
|
1115
1866
|
} catch (err) {
|
|
1116
1867
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1127,7 +1878,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1127
1878
|
a.deleteStackInstances('fake data', null, null, null, null, null, null, (data, error) => {
|
|
1128
1879
|
try {
|
|
1129
1880
|
const displayE = 'regions is required';
|
|
1130
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1881
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-deleteStackInstancesSTSRole', displayE);
|
|
1131
1882
|
done();
|
|
1132
1883
|
} catch (err) {
|
|
1133
1884
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1144,7 +1895,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1144
1895
|
a.deleteStackInstances('fake data', ['fake data'], null, null, null, null, null, (data, error) => {
|
|
1145
1896
|
try {
|
|
1146
1897
|
const displayE = 'retainStacks is required';
|
|
1147
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1898
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-deleteStackInstancesSTSRole', displayE);
|
|
1148
1899
|
done();
|
|
1149
1900
|
} catch (err) {
|
|
1150
1901
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1185,7 +1936,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1185
1936
|
a.describeStackSet(null, (data, error) => {
|
|
1186
1937
|
try {
|
|
1187
1938
|
const displayE = 'stackSetName is required';
|
|
1188
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1939
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeStackSetSTSRole', displayE);
|
|
1189
1940
|
done();
|
|
1190
1941
|
} catch (err) {
|
|
1191
1942
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1214,7 +1965,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1214
1965
|
a.createStackSet(null, null, null, null, null, null, null, null, null, null, null, null, (data, error) => {
|
|
1215
1966
|
try {
|
|
1216
1967
|
const displayE = 'stackSetName is required';
|
|
1217
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1968
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-createStackSetSTSRole', displayE);
|
|
1218
1969
|
done();
|
|
1219
1970
|
} catch (err) {
|
|
1220
1971
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1243,7 +1994,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1243
1994
|
a.updateStackSet(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, (data, error) => {
|
|
1244
1995
|
try {
|
|
1245
1996
|
const displayE = 'stackSetName is required';
|
|
1246
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
1997
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-updateStackSetSTSRole', displayE);
|
|
1247
1998
|
done();
|
|
1248
1999
|
} catch (err) {
|
|
1249
2000
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1272,7 +2023,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1272
2023
|
a.deleteStackSet(null, (data, error) => {
|
|
1273
2024
|
try {
|
|
1274
2025
|
const displayE = 'stackSetName is required';
|
|
1275
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2026
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-deleteStackSetSTSRole', displayE);
|
|
1276
2027
|
done();
|
|
1277
2028
|
} catch (err) {
|
|
1278
2029
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1301,7 +2052,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1301
2052
|
a.cancelUpdateStack(null, null, (data, error) => {
|
|
1302
2053
|
try {
|
|
1303
2054
|
const displayE = 'stackName is required';
|
|
1304
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2055
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-cancelUpdateStackSTSRole', displayE);
|
|
1305
2056
|
done();
|
|
1306
2057
|
} catch (err) {
|
|
1307
2058
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1330,7 +2081,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1330
2081
|
a.listStackSetOperations(null, null, null, (data, error) => {
|
|
1331
2082
|
try {
|
|
1332
2083
|
const displayE = 'stackSetName is required';
|
|
1333
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2084
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-listStackSetOperationsSTSRole', displayE);
|
|
1334
2085
|
done();
|
|
1335
2086
|
} catch (err) {
|
|
1336
2087
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1359,7 +2110,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1359
2110
|
a.listStackSetOperationResults(null, null, null, null, (data, error) => {
|
|
1360
2111
|
try {
|
|
1361
2112
|
const displayE = 'stackSetName is required';
|
|
1362
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2113
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-listStackSetOperationResultsSTSRole', displayE);
|
|
1363
2114
|
done();
|
|
1364
2115
|
} catch (err) {
|
|
1365
2116
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1376,7 +2127,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1376
2127
|
a.listStackSetOperationResults('fake data', null, null, null, (data, error) => {
|
|
1377
2128
|
try {
|
|
1378
2129
|
const displayE = 'operationId is required';
|
|
1379
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2130
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-listStackSetOperationResultsSTSRole', displayE);
|
|
1380
2131
|
done();
|
|
1381
2132
|
} catch (err) {
|
|
1382
2133
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1405,7 +2156,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1405
2156
|
a.describeStackSetOperation(null, null, (data, error) => {
|
|
1406
2157
|
try {
|
|
1407
2158
|
const displayE = 'stackSetName is required';
|
|
1408
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2159
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeStackSetOperationSTSRole', displayE);
|
|
1409
2160
|
done();
|
|
1410
2161
|
} catch (err) {
|
|
1411
2162
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1422,7 +2173,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1422
2173
|
a.describeStackSetOperation('fake data', null, (data, error) => {
|
|
1423
2174
|
try {
|
|
1424
2175
|
const displayE = 'operationId is required';
|
|
1425
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2176
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeStackSetOperationSTSRole', displayE);
|
|
1426
2177
|
done();
|
|
1427
2178
|
} catch (err) {
|
|
1428
2179
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1451,7 +2202,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1451
2202
|
a.stopStackSetOperation(null, null, (data, error) => {
|
|
1452
2203
|
try {
|
|
1453
2204
|
const displayE = 'stackSetName is required';
|
|
1454
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2205
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-stopStackSetOperationSTSRole', displayE);
|
|
1455
2206
|
done();
|
|
1456
2207
|
} catch (err) {
|
|
1457
2208
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1468,7 +2219,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1468
2219
|
a.stopStackSetOperation('fake data', null, (data, error) => {
|
|
1469
2220
|
try {
|
|
1470
2221
|
const displayE = 'operationId is required';
|
|
1471
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2222
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-stopStackSetOperationSTSRole', displayE);
|
|
1472
2223
|
done();
|
|
1473
2224
|
} catch (err) {
|
|
1474
2225
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1509,7 +2260,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1509
2260
|
a.listStackResources(null, null, (data, error) => {
|
|
1510
2261
|
try {
|
|
1511
2262
|
const displayE = 'stackName is required';
|
|
1512
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2263
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-listStackResourcesSTSRole', displayE);
|
|
1513
2264
|
done();
|
|
1514
2265
|
} catch (err) {
|
|
1515
2266
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1538,7 +2289,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1538
2289
|
a.describeStackResource(null, null, (data, error) => {
|
|
1539
2290
|
try {
|
|
1540
2291
|
const displayE = 'stackName is required';
|
|
1541
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2292
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeStackResourceSTSRole', displayE);
|
|
1542
2293
|
done();
|
|
1543
2294
|
} catch (err) {
|
|
1544
2295
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1555,7 +2306,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1555
2306
|
a.describeStackResource('fake data', null, (data, error) => {
|
|
1556
2307
|
try {
|
|
1557
2308
|
const displayE = 'logicalResourceId is required';
|
|
1558
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2309
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeStackResourceSTSRole', displayE);
|
|
1559
2310
|
done();
|
|
1560
2311
|
} catch (err) {
|
|
1561
2312
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1596,7 +2347,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1596
2347
|
a.describeStackResourceDrifts(null, null, null, null, (data, error) => {
|
|
1597
2348
|
try {
|
|
1598
2349
|
const displayE = 'stackName is required';
|
|
1599
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2350
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeStackResourceDriftsSTSRole', displayE);
|
|
1600
2351
|
done();
|
|
1601
2352
|
} catch (err) {
|
|
1602
2353
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1625,7 +2376,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1625
2376
|
a.detectStackResourceDrift(null, null, (data, error) => {
|
|
1626
2377
|
try {
|
|
1627
2378
|
const displayE = 'stackName is required';
|
|
1628
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2379
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-detectStackResourceDriftSTSRole', displayE);
|
|
1629
2380
|
done();
|
|
1630
2381
|
} catch (err) {
|
|
1631
2382
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1642,7 +2393,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1642
2393
|
a.detectStackResourceDrift('fake data', null, (data, error) => {
|
|
1643
2394
|
try {
|
|
1644
2395
|
const displayE = 'logicalResourceId is required';
|
|
1645
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2396
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-detectStackResourceDriftSTSRole', displayE);
|
|
1646
2397
|
done();
|
|
1647
2398
|
} catch (err) {
|
|
1648
2399
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1671,7 +2422,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1671
2422
|
a.describeStackDriftDetectionStatus(null, (data, error) => {
|
|
1672
2423
|
try {
|
|
1673
2424
|
const displayE = 'stackDriftDetectionId is required';
|
|
1674
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2425
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeStackDriftDetectionStatusSTSRole', displayE);
|
|
1675
2426
|
done();
|
|
1676
2427
|
} catch (err) {
|
|
1677
2428
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1700,7 +2451,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1700
2451
|
a.detectStackDrift(null, null, (data, error) => {
|
|
1701
2452
|
try {
|
|
1702
2453
|
const displayE = 'stackName is required';
|
|
1703
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2454
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-detectStackDriftSTSRole', displayE);
|
|
1704
2455
|
done();
|
|
1705
2456
|
} catch (err) {
|
|
1706
2457
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1729,7 +2480,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1729
2480
|
a.detectStackSetDrift(null, null, null, (data, error) => {
|
|
1730
2481
|
try {
|
|
1731
2482
|
const displayE = 'stackSetName is required';
|
|
1732
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2483
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-detectStackSetDriftSTSRole', displayE);
|
|
1733
2484
|
done();
|
|
1734
2485
|
} catch (err) {
|
|
1735
2486
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1758,7 +2509,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1758
2509
|
a.getStackPolicy(null, (data, error) => {
|
|
1759
2510
|
try {
|
|
1760
2511
|
const displayE = 'stackName is required';
|
|
1761
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2512
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-getStackPolicySTSRole', displayE);
|
|
1762
2513
|
done();
|
|
1763
2514
|
} catch (err) {
|
|
1764
2515
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1787,7 +2538,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1787
2538
|
a.setStackPolicy(null, null, null, (data, error) => {
|
|
1788
2539
|
try {
|
|
1789
2540
|
const displayE = 'stackName is required';
|
|
1790
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2541
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-setStackPolicySTSRole', displayE);
|
|
1791
2542
|
done();
|
|
1792
2543
|
} catch (err) {
|
|
1793
2544
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1816,7 +2567,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1816
2567
|
a.continueUpdateRollback(null, null, null, null, (data, error) => {
|
|
1817
2568
|
try {
|
|
1818
2569
|
const displayE = 'stackName is required';
|
|
1819
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2570
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-continueUpdateRollbackSTSRole', displayE);
|
|
1820
2571
|
done();
|
|
1821
2572
|
} catch (err) {
|
|
1822
2573
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1845,7 +2596,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1845
2596
|
a.listChangeSets(null, null, (data, error) => {
|
|
1846
2597
|
try {
|
|
1847
2598
|
const displayE = 'stackName is required';
|
|
1848
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2599
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-listChangeSetsSTSRole', displayE);
|
|
1849
2600
|
done();
|
|
1850
2601
|
} catch (err) {
|
|
1851
2602
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1874,7 +2625,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1874
2625
|
a.describeChangeSet(null, null, null, (data, error) => {
|
|
1875
2626
|
try {
|
|
1876
2627
|
const displayE = 'changeSetName is required';
|
|
1877
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2628
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeChangeSetSTSRole', displayE);
|
|
1878
2629
|
done();
|
|
1879
2630
|
} catch (err) {
|
|
1880
2631
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1903,7 +2654,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1903
2654
|
a.executeChangeSet(null, null, null, (data, error) => {
|
|
1904
2655
|
try {
|
|
1905
2656
|
const displayE = 'changeSetName is required';
|
|
1906
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2657
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-executeChangeSetSTSRole', displayE);
|
|
1907
2658
|
done();
|
|
1908
2659
|
} catch (err) {
|
|
1909
2660
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1932,7 +2683,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1932
2683
|
a.createChangeSet(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, (data, error) => {
|
|
1933
2684
|
try {
|
|
1934
2685
|
const displayE = 'stackName is required';
|
|
1935
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2686
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-createChangeSetSTSRole', displayE);
|
|
1936
2687
|
done();
|
|
1937
2688
|
} catch (err) {
|
|
1938
2689
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1949,7 +2700,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1949
2700
|
a.createChangeSet('fake data', null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, (data, error) => {
|
|
1950
2701
|
try {
|
|
1951
2702
|
const displayE = 'changeSetName is required';
|
|
1952
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2703
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-createChangeSetSTSRole', displayE);
|
|
1953
2704
|
done();
|
|
1954
2705
|
} catch (err) {
|
|
1955
2706
|
log.error(`Test Failure: ${err}`);
|
|
@@ -1978,7 +2729,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
1978
2729
|
a.deleteChangeSet(null, null, (data, error) => {
|
|
1979
2730
|
try {
|
|
1980
2731
|
const displayE = 'changeSetName is required';
|
|
1981
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2732
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-deleteChangeSetSTSRole', displayE);
|
|
1982
2733
|
done();
|
|
1983
2734
|
} catch (err) {
|
|
1984
2735
|
log.error(`Test Failure: ${err}`);
|
|
@@ -2043,7 +2794,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
2043
2794
|
a.describeTypeRegistration(null, (data, error) => {
|
|
2044
2795
|
try {
|
|
2045
2796
|
const displayE = 'registrationToken is required';
|
|
2046
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2797
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeTypeRegistrationSTSRole', displayE);
|
|
2047
2798
|
done();
|
|
2048
2799
|
} catch (err) {
|
|
2049
2800
|
log.error(`Test Failure: ${err}`);
|
|
@@ -2072,7 +2823,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
2072
2823
|
a.registerType(null, null, null, null, null, null, (data, error) => {
|
|
2073
2824
|
try {
|
|
2074
2825
|
const displayE = 'schemaHandlerPackage is required';
|
|
2075
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2826
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-registerTypeSTSRole', displayE);
|
|
2076
2827
|
done();
|
|
2077
2828
|
} catch (err) {
|
|
2078
2829
|
log.error(`Test Failure: ${err}`);
|
|
@@ -2137,7 +2888,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
2137
2888
|
a.listImports(null, null, (data, error) => {
|
|
2138
2889
|
try {
|
|
2139
2890
|
const displayE = 'exportName is required';
|
|
2140
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2891
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-listImportsSTSRole', displayE);
|
|
2141
2892
|
done();
|
|
2142
2893
|
} catch (err) {
|
|
2143
2894
|
log.error(`Test Failure: ${err}`);
|
|
@@ -2238,7 +2989,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
2238
2989
|
a.signalResource(null, null, null, null, (data, error) => {
|
|
2239
2990
|
try {
|
|
2240
2991
|
const displayE = 'logicalResourceId is required';
|
|
2241
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
2992
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-signalResourceSTSRole', displayE);
|
|
2242
2993
|
done();
|
|
2243
2994
|
} catch (err) {
|
|
2244
2995
|
log.error(`Test Failure: ${err}`);
|
|
@@ -2255,7 +3006,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
2255
3006
|
a.signalResource('fake data', null, null, null, (data, error) => {
|
|
2256
3007
|
try {
|
|
2257
3008
|
const displayE = 'stackName is required';
|
|
2258
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
3009
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-signalResourceSTSRole', displayE);
|
|
2259
3010
|
done();
|
|
2260
3011
|
} catch (err) {
|
|
2261
3012
|
log.error(`Test Failure: ${err}`);
|
|
@@ -2272,7 +3023,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
2272
3023
|
a.signalResource('fake data', 'fake data', null, null, (data, error) => {
|
|
2273
3024
|
try {
|
|
2274
3025
|
const displayE = 'status is required';
|
|
2275
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
3026
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-signalResourceSTSRole', displayE);
|
|
2276
3027
|
done();
|
|
2277
3028
|
} catch (err) {
|
|
2278
3029
|
log.error(`Test Failure: ${err}`);
|
|
@@ -2289,7 +3040,7 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
2289
3040
|
a.signalResource('fake data', 'fake data', 'fake data', null, (data, error) => {
|
|
2290
3041
|
try {
|
|
2291
3042
|
const displayE = 'uniqueId is required';
|
|
2292
|
-
runErrorAsserts(data, error, 'AD.300', 'Test-
|
|
3043
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-signalResourceSTSRole', displayE);
|
|
2293
3044
|
done();
|
|
2294
3045
|
} catch (err) {
|
|
2295
3046
|
log.error(`Test Failure: ${err}`);
|
|
@@ -2301,6 +3052,305 @@ describe('[unit] AwsCloudFormation Adapter Test', () => {
|
|
|
2301
3052
|
done(error);
|
|
2302
3053
|
}
|
|
2303
3054
|
}).timeout(attemptTimeout);
|
|
3055
|
+
|
|
3056
|
+
describe('#activateOrganizationsAccess - errors', () => {
|
|
3057
|
+
it('should have a activateOrganizationsAccess function', (done) => {
|
|
3058
|
+
try {
|
|
3059
|
+
assert.equal(true, typeof a.activateOrganizationsAccess === 'function');
|
|
3060
|
+
done();
|
|
3061
|
+
} catch (error) {
|
|
3062
|
+
log.error(`Test Failure: ${error}`);
|
|
3063
|
+
done(error);
|
|
3064
|
+
}
|
|
3065
|
+
}).timeout(attemptTimeout);
|
|
3066
|
+
});
|
|
3067
|
+
|
|
3068
|
+
describe('#activateType - errors', () => {
|
|
3069
|
+
it('should have a activateType function', (done) => {
|
|
3070
|
+
try {
|
|
3071
|
+
assert.equal(true, typeof a.activateType === 'function');
|
|
3072
|
+
done();
|
|
3073
|
+
} catch (error) {
|
|
3074
|
+
log.error(`Test Failure: ${error}`);
|
|
3075
|
+
done(error);
|
|
3076
|
+
}
|
|
3077
|
+
}).timeout(attemptTimeout);
|
|
3078
|
+
});
|
|
3079
|
+
|
|
3080
|
+
describe('#batchDescribeTypeConfigurations - errors', () => {
|
|
3081
|
+
it('should have a batchDescribeTypeConfigurations function', (done) => {
|
|
3082
|
+
try {
|
|
3083
|
+
assert.equal(true, typeof a.batchDescribeTypeConfigurations === 'function');
|
|
3084
|
+
done();
|
|
3085
|
+
} catch (error) {
|
|
3086
|
+
log.error(`Test Failure: ${error}`);
|
|
3087
|
+
done(error);
|
|
3088
|
+
}
|
|
3089
|
+
}).timeout(attemptTimeout);
|
|
3090
|
+
it('should error if - missing typeConfigurationIdentifiers', (done) => {
|
|
3091
|
+
try {
|
|
3092
|
+
a.batchDescribeTypeConfigurations(null, (data, error) => {
|
|
3093
|
+
try {
|
|
3094
|
+
const displayE = 'typeConfigurationIdentifiers is required';
|
|
3095
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-batchDescribeTypeConfigurationsSTSRole', displayE);
|
|
3096
|
+
done();
|
|
3097
|
+
} catch (err) {
|
|
3098
|
+
log.error(`Test Failure: ${err}`);
|
|
3099
|
+
done(err);
|
|
3100
|
+
}
|
|
3101
|
+
});
|
|
3102
|
+
} catch (error) {
|
|
3103
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3104
|
+
done(error);
|
|
3105
|
+
}
|
|
3106
|
+
}).timeout(attemptTimeout);
|
|
3107
|
+
});
|
|
3108
|
+
|
|
3109
|
+
describe('#deactivateOrganizationsAccess - errors', () => {
|
|
3110
|
+
it('should have a deactivateOrganizationsAccess function', (done) => {
|
|
3111
|
+
try {
|
|
3112
|
+
assert.equal(true, typeof a.deactivateOrganizationsAccess === 'function');
|
|
3113
|
+
done();
|
|
3114
|
+
} catch (error) {
|
|
3115
|
+
log.error(`Test Failure: ${error}`);
|
|
3116
|
+
done(error);
|
|
3117
|
+
}
|
|
3118
|
+
}).timeout(attemptTimeout);
|
|
3119
|
+
});
|
|
3120
|
+
|
|
3121
|
+
describe('#deactivateType - errors', () => {
|
|
3122
|
+
it('should have a deactivateType function', (done) => {
|
|
3123
|
+
try {
|
|
3124
|
+
assert.equal(true, typeof a.deactivateType === 'function');
|
|
3125
|
+
done();
|
|
3126
|
+
} catch (error) {
|
|
3127
|
+
log.error(`Test Failure: ${error}`);
|
|
3128
|
+
done(error);
|
|
3129
|
+
}
|
|
3130
|
+
}).timeout(attemptTimeout);
|
|
3131
|
+
});
|
|
3132
|
+
|
|
3133
|
+
describe('#describeChangeSetHooks - errors', () => {
|
|
3134
|
+
it('should have a describeChangeSetHooks function', (done) => {
|
|
3135
|
+
try {
|
|
3136
|
+
assert.equal(true, typeof a.describeChangeSetHooks === 'function');
|
|
3137
|
+
done();
|
|
3138
|
+
} catch (error) {
|
|
3139
|
+
log.error(`Test Failure: ${error}`);
|
|
3140
|
+
done(error);
|
|
3141
|
+
}
|
|
3142
|
+
}).timeout(attemptTimeout);
|
|
3143
|
+
it('should error if - missing changeSetName', (done) => {
|
|
3144
|
+
try {
|
|
3145
|
+
a.describeChangeSetHooks(null, null, null, null, (data, error) => {
|
|
3146
|
+
try {
|
|
3147
|
+
const displayE = 'changeSetName is required';
|
|
3148
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-describeChangeSetHooksSTSRole', displayE);
|
|
3149
|
+
done();
|
|
3150
|
+
} catch (err) {
|
|
3151
|
+
log.error(`Test Failure: ${err}`);
|
|
3152
|
+
done(err);
|
|
3153
|
+
}
|
|
3154
|
+
});
|
|
3155
|
+
} catch (error) {
|
|
3156
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3157
|
+
done(error);
|
|
3158
|
+
}
|
|
3159
|
+
}).timeout(attemptTimeout);
|
|
3160
|
+
});
|
|
3161
|
+
|
|
3162
|
+
describe('#describeOrganizationsAccess - errors', () => {
|
|
3163
|
+
it('should have a describeOrganizationsAccess function', (done) => {
|
|
3164
|
+
try {
|
|
3165
|
+
assert.equal(true, typeof a.describeOrganizationsAccess === 'function');
|
|
3166
|
+
done();
|
|
3167
|
+
} catch (error) {
|
|
3168
|
+
log.error(`Test Failure: ${error}`);
|
|
3169
|
+
done(error);
|
|
3170
|
+
}
|
|
3171
|
+
}).timeout(attemptTimeout);
|
|
3172
|
+
});
|
|
3173
|
+
|
|
3174
|
+
describe('#describePublisher - errors', () => {
|
|
3175
|
+
it('should have a describePublisher function', (done) => {
|
|
3176
|
+
try {
|
|
3177
|
+
assert.equal(true, typeof a.describePublisher === 'function');
|
|
3178
|
+
done();
|
|
3179
|
+
} catch (error) {
|
|
3180
|
+
log.error(`Test Failure: ${error}`);
|
|
3181
|
+
done(error);
|
|
3182
|
+
}
|
|
3183
|
+
}).timeout(attemptTimeout);
|
|
3184
|
+
});
|
|
3185
|
+
|
|
3186
|
+
describe('#importStacksToStackSet - errors', () => {
|
|
3187
|
+
it('should have a importStacksToStackSet function', (done) => {
|
|
3188
|
+
try {
|
|
3189
|
+
assert.equal(true, typeof a.importStacksToStackSet === 'function');
|
|
3190
|
+
done();
|
|
3191
|
+
} catch (error) {
|
|
3192
|
+
log.error(`Test Failure: ${error}`);
|
|
3193
|
+
done(error);
|
|
3194
|
+
}
|
|
3195
|
+
}).timeout(attemptTimeout);
|
|
3196
|
+
it('should error if - missing stackSetName', (done) => {
|
|
3197
|
+
try {
|
|
3198
|
+
a.importStacksToStackSet(null, null, null, null, null, null, null, (data, error) => {
|
|
3199
|
+
try {
|
|
3200
|
+
const displayE = 'stackSetName is required';
|
|
3201
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-importStacksToStackSetSTSRole', displayE);
|
|
3202
|
+
done();
|
|
3203
|
+
} catch (err) {
|
|
3204
|
+
log.error(`Test Failure: ${err}`);
|
|
3205
|
+
done(err);
|
|
3206
|
+
}
|
|
3207
|
+
});
|
|
3208
|
+
} catch (error) {
|
|
3209
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3210
|
+
done(error);
|
|
3211
|
+
}
|
|
3212
|
+
}).timeout(attemptTimeout);
|
|
3213
|
+
});
|
|
3214
|
+
|
|
3215
|
+
describe('#publishType - errors', () => {
|
|
3216
|
+
it('should have a publishType function', (done) => {
|
|
3217
|
+
try {
|
|
3218
|
+
assert.equal(true, typeof a.publishType === 'function');
|
|
3219
|
+
done();
|
|
3220
|
+
} catch (error) {
|
|
3221
|
+
log.error(`Test Failure: ${error}`);
|
|
3222
|
+
done(error);
|
|
3223
|
+
}
|
|
3224
|
+
}).timeout(attemptTimeout);
|
|
3225
|
+
});
|
|
3226
|
+
|
|
3227
|
+
describe('#recordHandlerProgress - errors', () => {
|
|
3228
|
+
it('should have a recordHandlerProgress function', (done) => {
|
|
3229
|
+
try {
|
|
3230
|
+
assert.equal(true, typeof a.recordHandlerProgress === 'function');
|
|
3231
|
+
done();
|
|
3232
|
+
} catch (error) {
|
|
3233
|
+
log.error(`Test Failure: ${error}`);
|
|
3234
|
+
done(error);
|
|
3235
|
+
}
|
|
3236
|
+
}).timeout(attemptTimeout);
|
|
3237
|
+
it('should error if - missing bearerToken', (done) => {
|
|
3238
|
+
try {
|
|
3239
|
+
a.recordHandlerProgress(null, null, null, null, null, null, null, (data, error) => {
|
|
3240
|
+
try {
|
|
3241
|
+
const displayE = 'bearerToken is required';
|
|
3242
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-recordHandlerProgressSTSRole', displayE);
|
|
3243
|
+
done();
|
|
3244
|
+
} catch (err) {
|
|
3245
|
+
log.error(`Test Failure: ${err}`);
|
|
3246
|
+
done(err);
|
|
3247
|
+
}
|
|
3248
|
+
});
|
|
3249
|
+
} catch (error) {
|
|
3250
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3251
|
+
done(error);
|
|
3252
|
+
}
|
|
3253
|
+
}).timeout(attemptTimeout);
|
|
3254
|
+
it('should error if - missing operationStatus', (done) => {
|
|
3255
|
+
try {
|
|
3256
|
+
a.recordHandlerProgress('fakedata', null, null, null, null, null, null, (data, error) => {
|
|
3257
|
+
try {
|
|
3258
|
+
const displayE = 'operationStatus is required';
|
|
3259
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-recordHandlerProgressSTSRole', displayE);
|
|
3260
|
+
done();
|
|
3261
|
+
} catch (err) {
|
|
3262
|
+
log.error(`Test Failure: ${err}`);
|
|
3263
|
+
done(err);
|
|
3264
|
+
}
|
|
3265
|
+
});
|
|
3266
|
+
} catch (error) {
|
|
3267
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3268
|
+
done(error);
|
|
3269
|
+
}
|
|
3270
|
+
}).timeout(attemptTimeout);
|
|
3271
|
+
});
|
|
3272
|
+
|
|
3273
|
+
describe('#registerPublisher - errors', () => {
|
|
3274
|
+
it('should have a registerPublisher function', (done) => {
|
|
3275
|
+
try {
|
|
3276
|
+
assert.equal(true, typeof a.registerPublisher === 'function');
|
|
3277
|
+
done();
|
|
3278
|
+
} catch (error) {
|
|
3279
|
+
log.error(`Test Failure: ${error}`);
|
|
3280
|
+
done(error);
|
|
3281
|
+
}
|
|
3282
|
+
}).timeout(attemptTimeout);
|
|
3283
|
+
});
|
|
3284
|
+
|
|
3285
|
+
describe('#rollbackStack - errors', () => {
|
|
3286
|
+
it('should have a rollbackStack function', (done) => {
|
|
3287
|
+
try {
|
|
3288
|
+
assert.equal(true, typeof a.rollbackStack === 'function');
|
|
3289
|
+
done();
|
|
3290
|
+
} catch (error) {
|
|
3291
|
+
log.error(`Test Failure: ${error}`);
|
|
3292
|
+
done(error);
|
|
3293
|
+
}
|
|
3294
|
+
}).timeout(attemptTimeout);
|
|
3295
|
+
it('should error if - missing stackName', (done) => {
|
|
3296
|
+
try {
|
|
3297
|
+
a.rollbackStack(null, null, null, (data, error) => {
|
|
3298
|
+
try {
|
|
3299
|
+
const displayE = 'stackName is required';
|
|
3300
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-rollbackStackSTSRole', displayE);
|
|
3301
|
+
done();
|
|
3302
|
+
} catch (err) {
|
|
3303
|
+
log.error(`Test Failure: ${err}`);
|
|
3304
|
+
done(err);
|
|
3305
|
+
}
|
|
3306
|
+
});
|
|
3307
|
+
} catch (error) {
|
|
3308
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3309
|
+
done(error);
|
|
3310
|
+
}
|
|
3311
|
+
}).timeout(attemptTimeout);
|
|
3312
|
+
});
|
|
3313
|
+
|
|
3314
|
+
describe('#setTypeConfiguration - errors', () => {
|
|
3315
|
+
it('should have a setTypeConfiguration function', (done) => {
|
|
3316
|
+
try {
|
|
3317
|
+
assert.equal(true, typeof a.setTypeConfiguration === 'function');
|
|
3318
|
+
done();
|
|
3319
|
+
} catch (error) {
|
|
3320
|
+
log.error(`Test Failure: ${error}`);
|
|
3321
|
+
done(error);
|
|
3322
|
+
}
|
|
3323
|
+
}).timeout(attemptTimeout);
|
|
3324
|
+
it('should error if - missing configuration', (done) => {
|
|
3325
|
+
try {
|
|
3326
|
+
a.setTypeConfiguration(null, null, null, null, null, (data, error) => {
|
|
3327
|
+
try {
|
|
3328
|
+
const displayE = 'configuration is required';
|
|
3329
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-aws_cloudformation-adapter-setTypeConfigurationSTSRole', displayE);
|
|
3330
|
+
done();
|
|
3331
|
+
} catch (err) {
|
|
3332
|
+
log.error(`Test Failure: ${err}`);
|
|
3333
|
+
done(err);
|
|
3334
|
+
}
|
|
3335
|
+
});
|
|
3336
|
+
} catch (error) {
|
|
3337
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3338
|
+
done(error);
|
|
3339
|
+
}
|
|
3340
|
+
}).timeout(attemptTimeout);
|
|
3341
|
+
});
|
|
3342
|
+
|
|
3343
|
+
describe('#testType - errors', () => {
|
|
3344
|
+
it('should have a testType function', (done) => {
|
|
3345
|
+
try {
|
|
3346
|
+
assert.equal(true, typeof a.testType === 'function');
|
|
3347
|
+
done();
|
|
3348
|
+
} catch (error) {
|
|
3349
|
+
log.error(`Test Failure: ${error}`);
|
|
3350
|
+
done(error);
|
|
3351
|
+
}
|
|
3352
|
+
}).timeout(attemptTimeout);
|
|
3353
|
+
});
|
|
2304
3354
|
});
|
|
2305
3355
|
});
|
|
2306
3356
|
});
|