@itentialopensource/adapter-kentik_v5 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +5 -0
- package/.eslintrc.js +18 -0
- package/.jshintrc +3 -0
- package/AUTH.md +39 -0
- package/BROKER.md +199 -0
- package/CALLS.md +170 -0
- package/CHANGELOG.md +9 -0
- package/CODE_OF_CONDUCT.md +43 -0
- package/CONTRIBUTING.md +172 -0
- package/ENHANCE.md +69 -0
- package/LICENSE +201 -0
- package/PROPERTIES.md +641 -0
- package/README.md +337 -0
- package/SUMMARY.md +9 -0
- package/SYSTEMINFO.md +11 -0
- package/TROUBLESHOOT.md +47 -0
- package/adapter.js +5915 -0
- package/adapterBase.js +1787 -0
- package/entities/.generic/action.json +214 -0
- package/entities/.generic/schema.json +28 -0
- package/entities/.system/action.json +50 -0
- package/entities/.system/mockdatafiles/getToken-default.json +3 -0
- package/entities/.system/mockdatafiles/healthcheck-default.json +3 -0
- package/entities/.system/schema.json +19 -0
- package/entities/.system/schemaTokenReq.json +53 -0
- package/entities/.system/schemaTokenResp.json +53 -0
- package/entities/Alerts/action.json +24 -0
- package/entities/Alerts/schema.json +19 -0
- package/entities/AlertsActive/action.json +46 -0
- package/entities/AlertsActive/schema.json +20 -0
- package/entities/CustomApplication/action.json +85 -0
- package/entities/CustomApplication/schema.json +33 -0
- package/entities/CustomDimension/action.json +166 -0
- package/entities/CustomDimension/schema.json +48 -0
- package/entities/Device/action.json +228 -0
- package/entities/Device/schema.json +51 -0
- package/entities/DeviceLabel/action.json +106 -0
- package/entities/DeviceLabel/schema.json +34 -0
- package/entities/MyKentikPortal/action.json +86 -0
- package/entities/MyKentikPortal/schema.json +44 -0
- package/entities/Plan/action.json +25 -0
- package/entities/Plan/schema.json +19 -0
- package/entities/QueryMethods/action.json +84 -0
- package/entities/QueryMethods/schema.json +22 -0
- package/entities/Savedfilter/action.json +106 -0
- package/entities/Savedfilter/schema.json +34 -0
- package/entities/Site/action.json +106 -0
- package/entities/Site/schema.json +34 -0
- package/entities/Tag/action.json +106 -0
- package/entities/Tag/schema.json +34 -0
- package/entities/User/action.json +106 -0
- package/entities/User/schema.json +34 -0
- package/error.json +190 -0
- package/package.json +85 -0
- package/pronghorn.json +6212 -0
- package/propertiesDecorators.json +14 -0
- package/propertiesSchema.json +1248 -0
- package/refs?service=git-upload-pack +0 -0
- package/report/creationReport.json +690 -0
- package/report/kentik-v5.json-OpenApi3Json.json +4780 -0
- package/sampleProperties.json +203 -0
- package/test/integration/adapterTestBasicGet.js +83 -0
- package/test/integration/adapterTestConnectivity.js +93 -0
- package/test/integration/adapterTestIntegration.js +2323 -0
- package/test/unit/adapterBaseTestUnit.js +949 -0
- package/test/unit/adapterTestUnit.js +3476 -0
- package/utils/adapterInfo.js +206 -0
- package/utils/addAuth.js +94 -0
- package/utils/artifactize.js +146 -0
- package/utils/basicGet.js +50 -0
- package/utils/checkMigrate.js +63 -0
- package/utils/entitiesToDB.js +178 -0
- package/utils/findPath.js +74 -0
- package/utils/methodDocumentor.js +225 -0
- package/utils/modify.js +154 -0
- package/utils/packModificationScript.js +35 -0
- package/utils/patches2bundledDeps.js +90 -0
- package/utils/pre-commit.sh +32 -0
- package/utils/removeHooks.js +20 -0
- package/utils/setup.js +33 -0
- package/utils/tbScript.js +246 -0
- package/utils/tbUtils.js +490 -0
- package/utils/testRunner.js +298 -0
- package/utils/troubleshootingAdapter.js +195 -0
- package/workflows/README.md +3 -0
|
@@ -0,0 +1,3476 @@
|
|
|
1
|
+
/* @copyright Itential, LLC 2019 (pre-modifications) */
|
|
2
|
+
|
|
3
|
+
// Set globals
|
|
4
|
+
/* global describe it log pronghornProps */
|
|
5
|
+
/* eslint global-require: warn */
|
|
6
|
+
/* eslint no-unused-vars: warn */
|
|
7
|
+
/* eslint import/no-dynamic-require:warn */
|
|
8
|
+
|
|
9
|
+
// include required items for testing & logging
|
|
10
|
+
const assert = require('assert');
|
|
11
|
+
const fs = require('fs-extra');
|
|
12
|
+
const mocha = require('mocha');
|
|
13
|
+
const path = require('path');
|
|
14
|
+
const util = require('util');
|
|
15
|
+
const winston = require('winston');
|
|
16
|
+
const execute = require('child_process').execSync;
|
|
17
|
+
const { expect } = require('chai');
|
|
18
|
+
const { use } = require('chai');
|
|
19
|
+
const td = require('testdouble');
|
|
20
|
+
const Ajv = require('ajv');
|
|
21
|
+
|
|
22
|
+
const ajv = new Ajv({ allErrors: true, unknownFormats: 'ignore' });
|
|
23
|
+
const anything = td.matchers.anything();
|
|
24
|
+
let logLevel = 'none';
|
|
25
|
+
const isRapidFail = false;
|
|
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;
|
|
35
|
+
|
|
36
|
+
// these variables can be changed to run in integrated mode so easier to set them here
|
|
37
|
+
// always check these in with bogus data!!!
|
|
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;
|
|
49
|
+
|
|
50
|
+
// these are the adapter properties. You generally should not need to alter
|
|
51
|
+
// any of these after they are initially set up
|
|
52
|
+
global.pronghornProps = {
|
|
53
|
+
pathProps: {
|
|
54
|
+
encrypted: false
|
|
55
|
+
},
|
|
56
|
+
adapterProps: {
|
|
57
|
+
adapters: [{
|
|
58
|
+
id: 'Test-kentik_v5',
|
|
59
|
+
type: 'KentikV5',
|
|
60
|
+
properties: samProps
|
|
61
|
+
}]
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
global.$HOME = `${__dirname}/../..`;
|
|
66
|
+
|
|
67
|
+
// set the log levels that Pronghorn uses, spam and trace are not defaulted in so without
|
|
68
|
+
// this you may error on log.trace calls.
|
|
69
|
+
const myCustomLevels = {
|
|
70
|
+
levels: {
|
|
71
|
+
spam: 6,
|
|
72
|
+
trace: 5,
|
|
73
|
+
debug: 4,
|
|
74
|
+
info: 3,
|
|
75
|
+
warn: 2,
|
|
76
|
+
error: 1,
|
|
77
|
+
none: 0
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
// need to see if there is a log level passed in
|
|
82
|
+
process.argv.forEach((val) => {
|
|
83
|
+
// is there a log level defined to be passed in?
|
|
84
|
+
if (val.indexOf('--LOG') === 0) {
|
|
85
|
+
// get the desired log level
|
|
86
|
+
const inputVal = val.split('=')[1];
|
|
87
|
+
|
|
88
|
+
// validate the log level is supported, if so set it
|
|
89
|
+
if (Object.hasOwnProperty.call(myCustomLevels.levels, inputVal)) {
|
|
90
|
+
logLevel = inputVal;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
// need to set global logging
|
|
96
|
+
global.log = winston.createLogger({
|
|
97
|
+
level: logLevel,
|
|
98
|
+
levels: myCustomLevels.levels,
|
|
99
|
+
transports: [
|
|
100
|
+
new winston.transports.Console()
|
|
101
|
+
]
|
|
102
|
+
});
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Runs the error asserts for the test
|
|
106
|
+
*/
|
|
107
|
+
function runErrorAsserts(data, error, code, origin, displayStr) {
|
|
108
|
+
assert.equal(null, data);
|
|
109
|
+
assert.notEqual(undefined, error);
|
|
110
|
+
assert.notEqual(null, error);
|
|
111
|
+
assert.notEqual(undefined, error.IAPerror);
|
|
112
|
+
assert.notEqual(null, error.IAPerror);
|
|
113
|
+
assert.notEqual(undefined, error.IAPerror.displayString);
|
|
114
|
+
assert.notEqual(null, error.IAPerror.displayString);
|
|
115
|
+
assert.equal(code, error.icode);
|
|
116
|
+
assert.equal(origin, error.IAPerror.origin);
|
|
117
|
+
assert.equal(displayStr, error.IAPerror.displayString);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
// require the adapter that we are going to be using
|
|
121
|
+
const KentikV5 = require('../../adapter');
|
|
122
|
+
|
|
123
|
+
// delete the .DS_Store directory in entities -- otherwise this will cause errors
|
|
124
|
+
const dirPath = path.join(__dirname, '../../entities/.DS_Store');
|
|
125
|
+
if (fs.existsSync(dirPath)) {
|
|
126
|
+
try {
|
|
127
|
+
fs.removeSync(dirPath);
|
|
128
|
+
console.log('.DS_Store deleted');
|
|
129
|
+
} catch (e) {
|
|
130
|
+
console.log('Error when deleting .DS_Store:', e);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
// begin the testing - these should be pretty well defined between the describe and the it!
|
|
135
|
+
describe('[unit] Kentik_v5 Adapter Test', () => {
|
|
136
|
+
describe('KentikV5 Class Tests', () => {
|
|
137
|
+
const a = new KentikV5(
|
|
138
|
+
pronghornProps.adapterProps.adapters[0].id,
|
|
139
|
+
pronghornProps.adapterProps.adapters[0].properties
|
|
140
|
+
);
|
|
141
|
+
|
|
142
|
+
if (isRapidFail) {
|
|
143
|
+
const state = {};
|
|
144
|
+
state.passed = true;
|
|
145
|
+
|
|
146
|
+
mocha.afterEach(function x() {
|
|
147
|
+
state.passed = state.passed
|
|
148
|
+
&& (this.currentTest.state === 'passed');
|
|
149
|
+
});
|
|
150
|
+
mocha.beforeEach(function x() {
|
|
151
|
+
if (!state.passed) {
|
|
152
|
+
return this.currentTest.skip();
|
|
153
|
+
}
|
|
154
|
+
return true;
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
describe('#class instance created', () => {
|
|
159
|
+
it('should be a class with properties', (done) => {
|
|
160
|
+
try {
|
|
161
|
+
assert.notEqual(null, a);
|
|
162
|
+
assert.notEqual(undefined, a);
|
|
163
|
+
const checkId = global.pronghornProps.adapterProps.adapters[0].id;
|
|
164
|
+
assert.equal(checkId, a.id);
|
|
165
|
+
assert.notEqual(null, a.allProps);
|
|
166
|
+
const check = global.pronghornProps.adapterProps.adapters[0].properties.healthcheck.type;
|
|
167
|
+
assert.equal(check, a.healthcheckType);
|
|
168
|
+
done();
|
|
169
|
+
} catch (error) {
|
|
170
|
+
log.error(`Test Failure: ${error}`);
|
|
171
|
+
done(error);
|
|
172
|
+
}
|
|
173
|
+
}).timeout(attemptTimeout);
|
|
174
|
+
});
|
|
175
|
+
|
|
176
|
+
describe('adapterBase.js', () => {
|
|
177
|
+
it('should have an adapterBase.js', (done) => {
|
|
178
|
+
try {
|
|
179
|
+
fs.exists('adapterBase.js', (val) => {
|
|
180
|
+
assert.equal(true, val);
|
|
181
|
+
done();
|
|
182
|
+
});
|
|
183
|
+
} catch (error) {
|
|
184
|
+
log.error(`Test Failure: ${error}`);
|
|
185
|
+
done(error);
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
});
|
|
189
|
+
|
|
190
|
+
let wffunctions = [];
|
|
191
|
+
describe('#iapGetAdapterWorkflowFunctions', () => {
|
|
192
|
+
it('should retrieve workflow functions', (done) => {
|
|
193
|
+
try {
|
|
194
|
+
wffunctions = a.iapGetAdapterWorkflowFunctions([]);
|
|
195
|
+
|
|
196
|
+
try {
|
|
197
|
+
assert.notEqual(0, wffunctions.length);
|
|
198
|
+
done();
|
|
199
|
+
} catch (err) {
|
|
200
|
+
log.error(`Test Failure: ${err}`);
|
|
201
|
+
done(err);
|
|
202
|
+
}
|
|
203
|
+
} catch (error) {
|
|
204
|
+
log.error(`Adapter Exception: ${error}`);
|
|
205
|
+
done(error);
|
|
206
|
+
}
|
|
207
|
+
}).timeout(attemptTimeout);
|
|
208
|
+
});
|
|
209
|
+
|
|
210
|
+
describe('package.json', () => {
|
|
211
|
+
it('should have a package.json', (done) => {
|
|
212
|
+
try {
|
|
213
|
+
fs.exists('package.json', (val) => {
|
|
214
|
+
assert.equal(true, val);
|
|
215
|
+
done();
|
|
216
|
+
});
|
|
217
|
+
} catch (error) {
|
|
218
|
+
log.error(`Test Failure: ${error}`);
|
|
219
|
+
done(error);
|
|
220
|
+
}
|
|
221
|
+
});
|
|
222
|
+
it('package.json should be validated', (done) => {
|
|
223
|
+
try {
|
|
224
|
+
const packageDotJson = require('../../package.json');
|
|
225
|
+
const { PJV } = require('package-json-validator');
|
|
226
|
+
const options = {
|
|
227
|
+
warnings: true, // show warnings
|
|
228
|
+
recommendations: true // show recommendations
|
|
229
|
+
};
|
|
230
|
+
const results = PJV.validate(JSON.stringify(packageDotJson), 'npm', options);
|
|
231
|
+
|
|
232
|
+
if (results.valid === false) {
|
|
233
|
+
log.error('The package.json contains the following errors: ');
|
|
234
|
+
log.error(util.inspect(results));
|
|
235
|
+
assert.equal(true, results.valid);
|
|
236
|
+
} else {
|
|
237
|
+
assert.equal(true, results.valid);
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
done();
|
|
241
|
+
} catch (error) {
|
|
242
|
+
log.error(`Test Failure: ${error}`);
|
|
243
|
+
done(error);
|
|
244
|
+
}
|
|
245
|
+
});
|
|
246
|
+
it('package.json standard fields should be customized', (done) => {
|
|
247
|
+
try {
|
|
248
|
+
const packageDotJson = require('../../package.json');
|
|
249
|
+
assert.notEqual(-1, packageDotJson.name.indexOf('kentik_v5'));
|
|
250
|
+
assert.notEqual(undefined, packageDotJson.version);
|
|
251
|
+
assert.notEqual(null, packageDotJson.version);
|
|
252
|
+
assert.notEqual('', packageDotJson.version);
|
|
253
|
+
assert.notEqual(undefined, packageDotJson.description);
|
|
254
|
+
assert.notEqual(null, packageDotJson.description);
|
|
255
|
+
assert.notEqual('', packageDotJson.description);
|
|
256
|
+
assert.equal('adapter.js', packageDotJson.main);
|
|
257
|
+
assert.notEqual(undefined, packageDotJson.wizardVersion);
|
|
258
|
+
assert.notEqual(null, packageDotJson.wizardVersion);
|
|
259
|
+
assert.notEqual('', packageDotJson.wizardVersion);
|
|
260
|
+
assert.notEqual(undefined, packageDotJson.engineVersion);
|
|
261
|
+
assert.notEqual(null, packageDotJson.engineVersion);
|
|
262
|
+
assert.notEqual('', packageDotJson.engineVersion);
|
|
263
|
+
assert.equal('http', packageDotJson.adapterType);
|
|
264
|
+
done();
|
|
265
|
+
} catch (error) {
|
|
266
|
+
log.error(`Test Failure: ${error}`);
|
|
267
|
+
done(error);
|
|
268
|
+
}
|
|
269
|
+
});
|
|
270
|
+
it('package.json proper scripts should be provided', (done) => {
|
|
271
|
+
try {
|
|
272
|
+
const packageDotJson = require('../../package.json');
|
|
273
|
+
assert.notEqual(undefined, packageDotJson.scripts);
|
|
274
|
+
assert.notEqual(null, packageDotJson.scripts);
|
|
275
|
+
assert.notEqual('', packageDotJson.scripts);
|
|
276
|
+
assert.equal('node --max_old_space_size=4096 ./node_modules/eslint/bin/eslint.js . --ext .json --ext .js', packageDotJson.scripts.lint);
|
|
277
|
+
assert.equal('node --max_old_space_size=4096 ./node_modules/eslint/bin/eslint.js . --ext .json --ext .js --quiet', packageDotJson.scripts['lint:errors']);
|
|
278
|
+
assert.equal('mocha test/unit/adapterBaseTestUnit.js --LOG=error', packageDotJson.scripts['test:baseunit']);
|
|
279
|
+
assert.equal('mocha test/unit/adapterTestUnit.js --LOG=error', packageDotJson.scripts['test:unit']);
|
|
280
|
+
assert.equal('mocha test/integration/adapterTestIntegration.js --LOG=error', packageDotJson.scripts['test:integration']);
|
|
281
|
+
assert.equal('nyc --reporter html --reporter text mocha --reporter dot test/*', packageDotJson.scripts['test:cover']);
|
|
282
|
+
assert.equal('npm run test:baseunit && npm run test:unit && npm run test:integration', packageDotJson.scripts.test);
|
|
283
|
+
done();
|
|
284
|
+
} catch (error) {
|
|
285
|
+
log.error(`Test Failure: ${error}`);
|
|
286
|
+
done(error);
|
|
287
|
+
}
|
|
288
|
+
});
|
|
289
|
+
it('package.json proper directories should be provided', (done) => {
|
|
290
|
+
try {
|
|
291
|
+
const packageDotJson = require('../../package.json');
|
|
292
|
+
assert.notEqual(undefined, packageDotJson.repository);
|
|
293
|
+
assert.notEqual(null, packageDotJson.repository);
|
|
294
|
+
assert.notEqual('', packageDotJson.repository);
|
|
295
|
+
done();
|
|
296
|
+
} catch (error) {
|
|
297
|
+
log.error(`Test Failure: ${error}`);
|
|
298
|
+
done(error);
|
|
299
|
+
}
|
|
300
|
+
});
|
|
301
|
+
it('package.json proper dependencies should be provided', (done) => {
|
|
302
|
+
try {
|
|
303
|
+
const packageDotJson = require('../../package.json');
|
|
304
|
+
assert.notEqual(undefined, packageDotJson.dependencies);
|
|
305
|
+
assert.notEqual(null, packageDotJson.dependencies);
|
|
306
|
+
assert.notEqual('', packageDotJson.dependencies);
|
|
307
|
+
assert.equal('^6.12.0', packageDotJson.dependencies.ajv);
|
|
308
|
+
assert.equal('^0.21.0', packageDotJson.dependencies.axios);
|
|
309
|
+
assert.equal('^2.20.0', packageDotJson.dependencies.commander);
|
|
310
|
+
assert.equal('^8.1.0', packageDotJson.dependencies['fs-extra']);
|
|
311
|
+
assert.equal('^9.0.1', packageDotJson.dependencies.mocha);
|
|
312
|
+
assert.equal('^2.0.1', packageDotJson.dependencies['mocha-param']);
|
|
313
|
+
assert.equal('^0.5.3', packageDotJson.dependencies['network-diagnostics']);
|
|
314
|
+
assert.equal('^15.1.0', packageDotJson.dependencies.nyc);
|
|
315
|
+
assert.equal('^1.4.10', packageDotJson.dependencies['readline-sync']);
|
|
316
|
+
assert.equal('^7.3.2', packageDotJson.dependencies.semver);
|
|
317
|
+
assert.equal('^3.3.3', packageDotJson.dependencies.winston);
|
|
318
|
+
done();
|
|
319
|
+
} catch (error) {
|
|
320
|
+
log.error(`Test Failure: ${error}`);
|
|
321
|
+
done(error);
|
|
322
|
+
}
|
|
323
|
+
});
|
|
324
|
+
it('package.json proper dev dependencies should be provided', (done) => {
|
|
325
|
+
try {
|
|
326
|
+
const packageDotJson = require('../../package.json');
|
|
327
|
+
assert.notEqual(undefined, packageDotJson.devDependencies);
|
|
328
|
+
assert.notEqual(null, packageDotJson.devDependencies);
|
|
329
|
+
assert.notEqual('', packageDotJson.devDependencies);
|
|
330
|
+
assert.equal('^4.3.4', packageDotJson.devDependencies.chai);
|
|
331
|
+
assert.equal('^7.29.0', packageDotJson.devDependencies.eslint);
|
|
332
|
+
assert.equal('^14.2.1', packageDotJson.devDependencies['eslint-config-airbnb-base']);
|
|
333
|
+
assert.equal('^2.23.4', packageDotJson.devDependencies['eslint-plugin-import']);
|
|
334
|
+
assert.equal('^3.0.0', packageDotJson.devDependencies['eslint-plugin-json']);
|
|
335
|
+
assert.equal('^0.6.3', packageDotJson.devDependencies['package-json-validator']);
|
|
336
|
+
assert.equal('^3.16.1', packageDotJson.devDependencies.testdouble);
|
|
337
|
+
done();
|
|
338
|
+
} catch (error) {
|
|
339
|
+
log.error(`Test Failure: ${error}`);
|
|
340
|
+
done(error);
|
|
341
|
+
}
|
|
342
|
+
});
|
|
343
|
+
});
|
|
344
|
+
|
|
345
|
+
describe('pronghorn.json', () => {
|
|
346
|
+
it('should have a pronghorn.json', (done) => {
|
|
347
|
+
try {
|
|
348
|
+
fs.exists('pronghorn.json', (val) => {
|
|
349
|
+
assert.equal(true, val);
|
|
350
|
+
done();
|
|
351
|
+
});
|
|
352
|
+
} catch (error) {
|
|
353
|
+
log.error(`Test Failure: ${error}`);
|
|
354
|
+
done(error);
|
|
355
|
+
}
|
|
356
|
+
});
|
|
357
|
+
it('pronghorn.json should be customized', (done) => {
|
|
358
|
+
try {
|
|
359
|
+
const pronghornDotJson = require('../../pronghorn.json');
|
|
360
|
+
assert.notEqual(-1, pronghornDotJson.id.indexOf('kentik_v5'));
|
|
361
|
+
assert.equal('Adapter', pronghornDotJson.type);
|
|
362
|
+
assert.equal('KentikV5', pronghornDotJson.export);
|
|
363
|
+
assert.equal('Kentik_v5', pronghornDotJson.title);
|
|
364
|
+
assert.equal('adapter.js', pronghornDotJson.src);
|
|
365
|
+
done();
|
|
366
|
+
} catch (error) {
|
|
367
|
+
log.error(`Test Failure: ${error}`);
|
|
368
|
+
done(error);
|
|
369
|
+
}
|
|
370
|
+
});
|
|
371
|
+
it('pronghorn.json should contain generic adapter methods', (done) => {
|
|
372
|
+
try {
|
|
373
|
+
const pronghornDotJson = require('../../pronghorn.json');
|
|
374
|
+
assert.notEqual(undefined, pronghornDotJson.methods);
|
|
375
|
+
assert.notEqual(null, pronghornDotJson.methods);
|
|
376
|
+
assert.notEqual('', pronghornDotJson.methods);
|
|
377
|
+
assert.equal(true, Array.isArray(pronghornDotJson.methods));
|
|
378
|
+
assert.notEqual(0, pronghornDotJson.methods.length);
|
|
379
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapUpdateAdapterConfiguration'));
|
|
380
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapFindAdapterPath'));
|
|
381
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapTroubleshootAdapter'));
|
|
382
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapRunAdapterHealthcheck'));
|
|
383
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapRunAdapterConnectivity'));
|
|
384
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapRunAdapterBasicGet'));
|
|
385
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapSuspendAdapter'));
|
|
386
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapUnsuspendAdapter'));
|
|
387
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'iapGetAdapterQueue'));
|
|
388
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'genericAdapterRequest'));
|
|
389
|
+
assert.notEqual(undefined, pronghornDotJson.methods.find((e) => e.name === 'genericAdapterRequestNoBasePath'));
|
|
390
|
+
done();
|
|
391
|
+
} catch (error) {
|
|
392
|
+
log.error(`Test Failure: ${error}`);
|
|
393
|
+
done(error);
|
|
394
|
+
}
|
|
395
|
+
});
|
|
396
|
+
it('pronghorn.json should only expose workflow functions', (done) => {
|
|
397
|
+
try {
|
|
398
|
+
const pronghornDotJson = require('../../pronghorn.json');
|
|
399
|
+
|
|
400
|
+
for (let m = 0; m < pronghornDotJson.methods.length; m += 1) {
|
|
401
|
+
let found = false;
|
|
402
|
+
let paramissue = false;
|
|
403
|
+
|
|
404
|
+
for (let w = 0; w < wffunctions.length; w += 1) {
|
|
405
|
+
if (pronghornDotJson.methods[m].name === wffunctions[w]) {
|
|
406
|
+
found = true;
|
|
407
|
+
const methLine = execute(`grep " ${wffunctions[w]}(" adapter.js | grep "callback) {"`).toString();
|
|
408
|
+
let wfparams = [];
|
|
409
|
+
|
|
410
|
+
if (methLine && methLine.indexOf('(') >= 0 && methLine.indexOf(')') >= 0) {
|
|
411
|
+
const temp = methLine.substring(methLine.indexOf('(') + 1, methLine.lastIndexOf(')'));
|
|
412
|
+
wfparams = temp.split(',');
|
|
413
|
+
|
|
414
|
+
for (let t = 0; t < wfparams.length; t += 1) {
|
|
415
|
+
// remove default value from the parameter name
|
|
416
|
+
wfparams[t] = wfparams[t].substring(0, wfparams[t].search(/=/) > 0 ? wfparams[t].search(/#|\?|=/) : wfparams[t].length);
|
|
417
|
+
// remove spaces
|
|
418
|
+
wfparams[t] = wfparams[t].trim();
|
|
419
|
+
|
|
420
|
+
if (wfparams[t] === 'callback') {
|
|
421
|
+
wfparams.splice(t, 1);
|
|
422
|
+
}
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
// if there are inputs defined but not on the method line
|
|
427
|
+
if (wfparams.length === 0 && (pronghornDotJson.methods[m].input
|
|
428
|
+
&& pronghornDotJson.methods[m].input.length > 0)) {
|
|
429
|
+
paramissue = true;
|
|
430
|
+
} else if (wfparams.length > 0 && (!pronghornDotJson.methods[m].input
|
|
431
|
+
|| pronghornDotJson.methods[m].input.length === 0)) {
|
|
432
|
+
// if there are no inputs defined but there are on the method line
|
|
433
|
+
paramissue = true;
|
|
434
|
+
} else {
|
|
435
|
+
for (let p = 0; p < pronghornDotJson.methods[m].input.length; p += 1) {
|
|
436
|
+
let pfound = false;
|
|
437
|
+
for (let wfp = 0; wfp < wfparams.length; wfp += 1) {
|
|
438
|
+
if (pronghornDotJson.methods[m].input[p].name.toUpperCase() === wfparams[wfp].toUpperCase()) {
|
|
439
|
+
pfound = true;
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
|
|
443
|
+
if (!pfound) {
|
|
444
|
+
paramissue = true;
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
for (let wfp = 0; wfp < wfparams.length; wfp += 1) {
|
|
448
|
+
let pfound = false;
|
|
449
|
+
for (let p = 0; p < pronghornDotJson.methods[m].input.length; p += 1) {
|
|
450
|
+
if (pronghornDotJson.methods[m].input[p].name.toUpperCase() === wfparams[wfp].toUpperCase()) {
|
|
451
|
+
pfound = true;
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
if (!pfound) {
|
|
456
|
+
paramissue = true;
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
break;
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
|
|
465
|
+
if (!found) {
|
|
466
|
+
// this is the reason to go through both loops - log which ones are not found so
|
|
467
|
+
// they can be worked
|
|
468
|
+
log.error(`${pronghornDotJson.methods[m].name} not found in workflow functions`);
|
|
469
|
+
}
|
|
470
|
+
if (paramissue) {
|
|
471
|
+
// this is the reason to go through both loops - log which ones are not found so
|
|
472
|
+
// they can be worked
|
|
473
|
+
log.error(`${pronghornDotJson.methods[m].name} has a parameter mismatch`);
|
|
474
|
+
}
|
|
475
|
+
assert.equal(true, found);
|
|
476
|
+
assert.equal(false, paramissue);
|
|
477
|
+
}
|
|
478
|
+
done();
|
|
479
|
+
} catch (error) {
|
|
480
|
+
log.error(`Adapter Exception: ${error}`);
|
|
481
|
+
done(error);
|
|
482
|
+
}
|
|
483
|
+
}).timeout(attemptTimeout);
|
|
484
|
+
it('pronghorn.json should expose all workflow functions', (done) => {
|
|
485
|
+
try {
|
|
486
|
+
const pronghornDotJson = require('../../pronghorn.json');
|
|
487
|
+
for (let w = 0; w < wffunctions.length; w += 1) {
|
|
488
|
+
let found = false;
|
|
489
|
+
|
|
490
|
+
for (let m = 0; m < pronghornDotJson.methods.length; m += 1) {
|
|
491
|
+
if (pronghornDotJson.methods[m].name === wffunctions[w]) {
|
|
492
|
+
found = true;
|
|
493
|
+
break;
|
|
494
|
+
}
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
if (!found) {
|
|
498
|
+
// this is the reason to go through both loops - log which ones are not found so
|
|
499
|
+
// they can be worked
|
|
500
|
+
log.error(`${wffunctions[w]} not found in pronghorn.json`);
|
|
501
|
+
}
|
|
502
|
+
assert.equal(true, found);
|
|
503
|
+
}
|
|
504
|
+
done();
|
|
505
|
+
} catch (error) {
|
|
506
|
+
log.error(`Adapter Exception: ${error}`);
|
|
507
|
+
done(error);
|
|
508
|
+
}
|
|
509
|
+
});
|
|
510
|
+
it('pronghorn.json verify input/output schema objects', (done) => {
|
|
511
|
+
const verifySchema = (methodName, schema) => {
|
|
512
|
+
try {
|
|
513
|
+
ajv.compile(schema);
|
|
514
|
+
} catch (error) {
|
|
515
|
+
const errorMessage = `Invalid schema found in '${methodName}' method.
|
|
516
|
+
Schema => ${JSON.stringify(schema)}.
|
|
517
|
+
Details => ${error.message}`;
|
|
518
|
+
throw new Error(errorMessage);
|
|
519
|
+
}
|
|
520
|
+
};
|
|
521
|
+
|
|
522
|
+
try {
|
|
523
|
+
const pronghornDotJson = require('../../pronghorn.json');
|
|
524
|
+
const { methods } = pronghornDotJson;
|
|
525
|
+
for (let i = 0; i < methods.length; i += 1) {
|
|
526
|
+
for (let j = 0; j < methods[i].input.length; j += 1) {
|
|
527
|
+
const inputSchema = methods[i].input[j].schema;
|
|
528
|
+
if (inputSchema) {
|
|
529
|
+
verifySchema(methods[i].name, inputSchema);
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
const outputSchema = methods[i].output.schema;
|
|
533
|
+
if (outputSchema) {
|
|
534
|
+
verifySchema(methods[i].name, outputSchema);
|
|
535
|
+
}
|
|
536
|
+
}
|
|
537
|
+
done();
|
|
538
|
+
} catch (error) {
|
|
539
|
+
log.error(`Adapter Exception: ${error}`);
|
|
540
|
+
done(error);
|
|
541
|
+
}
|
|
542
|
+
});
|
|
543
|
+
});
|
|
544
|
+
|
|
545
|
+
describe('propertiesSchema.json', () => {
|
|
546
|
+
it('should have a propertiesSchema.json', (done) => {
|
|
547
|
+
try {
|
|
548
|
+
fs.exists('propertiesSchema.json', (val) => {
|
|
549
|
+
assert.equal(true, val);
|
|
550
|
+
done();
|
|
551
|
+
});
|
|
552
|
+
} catch (error) {
|
|
553
|
+
log.error(`Test Failure: ${error}`);
|
|
554
|
+
done(error);
|
|
555
|
+
}
|
|
556
|
+
});
|
|
557
|
+
it('propertiesSchema.json should be customized', (done) => {
|
|
558
|
+
try {
|
|
559
|
+
const propertiesDotJson = require('../../propertiesSchema.json');
|
|
560
|
+
assert.equal('adapter-kentik_v5', propertiesDotJson.$id);
|
|
561
|
+
assert.equal('object', propertiesDotJson.type);
|
|
562
|
+
assert.equal('http://json-schema.org/draft-07/schema#', propertiesDotJson.$schema);
|
|
563
|
+
done();
|
|
564
|
+
} catch (error) {
|
|
565
|
+
log.error(`Test Failure: ${error}`);
|
|
566
|
+
done(error);
|
|
567
|
+
}
|
|
568
|
+
});
|
|
569
|
+
it('propertiesSchema.json should contain generic adapter properties', (done) => {
|
|
570
|
+
try {
|
|
571
|
+
const propertiesDotJson = require('../../propertiesSchema.json');
|
|
572
|
+
assert.notEqual(undefined, propertiesDotJson.properties);
|
|
573
|
+
assert.notEqual(null, propertiesDotJson.properties);
|
|
574
|
+
assert.notEqual('', propertiesDotJson.properties);
|
|
575
|
+
assert.equal('string', propertiesDotJson.properties.host.type);
|
|
576
|
+
assert.equal('integer', propertiesDotJson.properties.port.type);
|
|
577
|
+
assert.equal('boolean', propertiesDotJson.properties.stub.type);
|
|
578
|
+
assert.equal('string', propertiesDotJson.properties.protocol.type);
|
|
579
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.authentication);
|
|
580
|
+
assert.notEqual(null, propertiesDotJson.definitions.authentication);
|
|
581
|
+
assert.notEqual('', propertiesDotJson.definitions.authentication);
|
|
582
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.auth_method.type);
|
|
583
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.username.type);
|
|
584
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.password.type);
|
|
585
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.token.type);
|
|
586
|
+
assert.equal('integer', propertiesDotJson.definitions.authentication.properties.invalid_token_error.type);
|
|
587
|
+
assert.equal('integer', propertiesDotJson.definitions.authentication.properties.token_timeout.type);
|
|
588
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.token_cache.type);
|
|
589
|
+
assert.equal(true, Array.isArray(propertiesDotJson.definitions.authentication.properties.auth_field.type));
|
|
590
|
+
assert.equal(true, Array.isArray(propertiesDotJson.definitions.authentication.properties.auth_field_format.type));
|
|
591
|
+
assert.equal('boolean', propertiesDotJson.definitions.authentication.properties.auth_logging.type);
|
|
592
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.client_id.type);
|
|
593
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.client_secret.type);
|
|
594
|
+
assert.equal('string', propertiesDotJson.definitions.authentication.properties.grant_type.type);
|
|
595
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.ssl);
|
|
596
|
+
assert.notEqual(null, propertiesDotJson.definitions.ssl);
|
|
597
|
+
assert.notEqual('', propertiesDotJson.definitions.ssl);
|
|
598
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.ecdhCurve.type);
|
|
599
|
+
assert.equal('boolean', propertiesDotJson.definitions.ssl.properties.enabled.type);
|
|
600
|
+
assert.equal('boolean', propertiesDotJson.definitions.ssl.properties.accept_invalid_cert.type);
|
|
601
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.ca_file.type);
|
|
602
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.key_file.type);
|
|
603
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.cert_file.type);
|
|
604
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.secure_protocol.type);
|
|
605
|
+
assert.equal('string', propertiesDotJson.definitions.ssl.properties.ciphers.type);
|
|
606
|
+
assert.equal('string', propertiesDotJson.properties.base_path.type);
|
|
607
|
+
assert.equal('string', propertiesDotJson.properties.version.type);
|
|
608
|
+
assert.equal('string', propertiesDotJson.properties.cache_location.type);
|
|
609
|
+
assert.equal('boolean', propertiesDotJson.properties.encode_pathvars.type);
|
|
610
|
+
assert.equal('boolean', propertiesDotJson.properties.encode_queryvars.type);
|
|
611
|
+
assert.equal(true, Array.isArray(propertiesDotJson.properties.save_metric.type));
|
|
612
|
+
assert.notEqual(undefined, propertiesDotJson.definitions);
|
|
613
|
+
assert.notEqual(null, propertiesDotJson.definitions);
|
|
614
|
+
assert.notEqual('', propertiesDotJson.definitions);
|
|
615
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.healthcheck);
|
|
616
|
+
assert.notEqual(null, propertiesDotJson.definitions.healthcheck);
|
|
617
|
+
assert.notEqual('', propertiesDotJson.definitions.healthcheck);
|
|
618
|
+
assert.equal('string', propertiesDotJson.definitions.healthcheck.properties.type.type);
|
|
619
|
+
assert.equal('integer', propertiesDotJson.definitions.healthcheck.properties.frequency.type);
|
|
620
|
+
assert.equal('object', propertiesDotJson.definitions.healthcheck.properties.query_object.type);
|
|
621
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.throttle);
|
|
622
|
+
assert.notEqual(null, propertiesDotJson.definitions.throttle);
|
|
623
|
+
assert.notEqual('', propertiesDotJson.definitions.throttle);
|
|
624
|
+
assert.equal('boolean', propertiesDotJson.definitions.throttle.properties.throttle_enabled.type);
|
|
625
|
+
assert.equal('integer', propertiesDotJson.definitions.throttle.properties.number_pronghorns.type);
|
|
626
|
+
assert.equal('string', propertiesDotJson.definitions.throttle.properties.sync_async.type);
|
|
627
|
+
assert.equal('integer', propertiesDotJson.definitions.throttle.properties.max_in_queue.type);
|
|
628
|
+
assert.equal('integer', propertiesDotJson.definitions.throttle.properties.concurrent_max.type);
|
|
629
|
+
assert.equal('integer', propertiesDotJson.definitions.throttle.properties.expire_timeout.type);
|
|
630
|
+
assert.equal('integer', propertiesDotJson.definitions.throttle.properties.avg_runtime.type);
|
|
631
|
+
assert.equal('array', propertiesDotJson.definitions.throttle.properties.priorities.type);
|
|
632
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.request);
|
|
633
|
+
assert.notEqual(null, propertiesDotJson.definitions.request);
|
|
634
|
+
assert.notEqual('', propertiesDotJson.definitions.request);
|
|
635
|
+
assert.equal('integer', propertiesDotJson.definitions.request.properties.number_redirects.type);
|
|
636
|
+
assert.equal('integer', propertiesDotJson.definitions.request.properties.number_retries.type);
|
|
637
|
+
assert.equal(true, Array.isArray(propertiesDotJson.definitions.request.properties.limit_retry_error.type));
|
|
638
|
+
assert.equal('array', propertiesDotJson.definitions.request.properties.failover_codes.type);
|
|
639
|
+
assert.equal('integer', propertiesDotJson.definitions.request.properties.attempt_timeout.type);
|
|
640
|
+
assert.equal('object', propertiesDotJson.definitions.request.properties.global_request.type);
|
|
641
|
+
assert.equal('object', propertiesDotJson.definitions.request.properties.global_request.properties.payload.type);
|
|
642
|
+
assert.equal('object', propertiesDotJson.definitions.request.properties.global_request.properties.uriOptions.type);
|
|
643
|
+
assert.equal('object', propertiesDotJson.definitions.request.properties.global_request.properties.addlHeaders.type);
|
|
644
|
+
assert.equal('object', propertiesDotJson.definitions.request.properties.global_request.properties.authData.type);
|
|
645
|
+
assert.equal('boolean', propertiesDotJson.definitions.request.properties.healthcheck_on_timeout.type);
|
|
646
|
+
assert.equal('boolean', propertiesDotJson.definitions.request.properties.return_raw.type);
|
|
647
|
+
assert.equal('boolean', propertiesDotJson.definitions.request.properties.archiving.type);
|
|
648
|
+
assert.equal('boolean', propertiesDotJson.definitions.request.properties.return_request.type);
|
|
649
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.proxy);
|
|
650
|
+
assert.notEqual(null, propertiesDotJson.definitions.proxy);
|
|
651
|
+
assert.notEqual('', propertiesDotJson.definitions.proxy);
|
|
652
|
+
assert.equal('boolean', propertiesDotJson.definitions.proxy.properties.enabled.type);
|
|
653
|
+
assert.equal('string', propertiesDotJson.definitions.proxy.properties.host.type);
|
|
654
|
+
assert.equal('integer', propertiesDotJson.definitions.proxy.properties.port.type);
|
|
655
|
+
assert.equal('string', propertiesDotJson.definitions.proxy.properties.protocol.type);
|
|
656
|
+
assert.equal('string', propertiesDotJson.definitions.proxy.properties.username.type);
|
|
657
|
+
assert.equal('string', propertiesDotJson.definitions.proxy.properties.password.type);
|
|
658
|
+
assert.notEqual(undefined, propertiesDotJson.definitions.mongo);
|
|
659
|
+
assert.notEqual(null, propertiesDotJson.definitions.mongo);
|
|
660
|
+
assert.notEqual('', propertiesDotJson.definitions.mongo);
|
|
661
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.host.type);
|
|
662
|
+
assert.equal('integer', propertiesDotJson.definitions.mongo.properties.port.type);
|
|
663
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.database.type);
|
|
664
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.username.type);
|
|
665
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.password.type);
|
|
666
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.replSet.type);
|
|
667
|
+
assert.equal('object', propertiesDotJson.definitions.mongo.properties.db_ssl.type);
|
|
668
|
+
assert.equal('boolean', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.enabled.type);
|
|
669
|
+
assert.equal('boolean', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.accept_invalid_cert.type);
|
|
670
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.ca_file.type);
|
|
671
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.key_file.type);
|
|
672
|
+
assert.equal('string', propertiesDotJson.definitions.mongo.properties.db_ssl.properties.cert_file.type);
|
|
673
|
+
assert.notEqual('', propertiesDotJson.definitions.devicebroker);
|
|
674
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.getDevice.type);
|
|
675
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.getDevicesFiltered.type);
|
|
676
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.isAlive.type);
|
|
677
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.getConfig.type);
|
|
678
|
+
assert.equal('array', propertiesDotJson.definitions.devicebroker.properties.getCount.type);
|
|
679
|
+
done();
|
|
680
|
+
} catch (error) {
|
|
681
|
+
log.error(`Test Failure: ${error}`);
|
|
682
|
+
done(error);
|
|
683
|
+
}
|
|
684
|
+
});
|
|
685
|
+
});
|
|
686
|
+
|
|
687
|
+
describe('error.json', () => {
|
|
688
|
+
it('should have an error.json', (done) => {
|
|
689
|
+
try {
|
|
690
|
+
fs.exists('error.json', (val) => {
|
|
691
|
+
assert.equal(true, val);
|
|
692
|
+
done();
|
|
693
|
+
});
|
|
694
|
+
} catch (error) {
|
|
695
|
+
log.error(`Test Failure: ${error}`);
|
|
696
|
+
done(error);
|
|
697
|
+
}
|
|
698
|
+
});
|
|
699
|
+
it('error.json should have standard adapter errors', (done) => {
|
|
700
|
+
try {
|
|
701
|
+
const errorDotJson = require('../../error.json');
|
|
702
|
+
assert.notEqual(undefined, errorDotJson.errors);
|
|
703
|
+
assert.notEqual(null, errorDotJson.errors);
|
|
704
|
+
assert.notEqual('', errorDotJson.errors);
|
|
705
|
+
assert.equal(true, Array.isArray(errorDotJson.errors));
|
|
706
|
+
assert.notEqual(0, errorDotJson.errors.length);
|
|
707
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.100'));
|
|
708
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.101'));
|
|
709
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.102'));
|
|
710
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.110'));
|
|
711
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.111'));
|
|
712
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.112'));
|
|
713
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.113'));
|
|
714
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.114'));
|
|
715
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.115'));
|
|
716
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.116'));
|
|
717
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.300'));
|
|
718
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.301'));
|
|
719
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.302'));
|
|
720
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.303'));
|
|
721
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.304'));
|
|
722
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.305'));
|
|
723
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.310'));
|
|
724
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.311'));
|
|
725
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.312'));
|
|
726
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.320'));
|
|
727
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.321'));
|
|
728
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.400'));
|
|
729
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.401'));
|
|
730
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.402'));
|
|
731
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.500'));
|
|
732
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.501'));
|
|
733
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.502'));
|
|
734
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.503'));
|
|
735
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.600'));
|
|
736
|
+
assert.notEqual(undefined, errorDotJson.errors.find((e) => e.icode === 'AD.900'));
|
|
737
|
+
done();
|
|
738
|
+
} catch (error) {
|
|
739
|
+
log.error(`Test Failure: ${error}`);
|
|
740
|
+
done(error);
|
|
741
|
+
}
|
|
742
|
+
});
|
|
743
|
+
});
|
|
744
|
+
|
|
745
|
+
describe('sampleProperties.json', () => {
|
|
746
|
+
it('should have a sampleProperties.json', (done) => {
|
|
747
|
+
try {
|
|
748
|
+
fs.exists('sampleProperties.json', (val) => {
|
|
749
|
+
assert.equal(true, val);
|
|
750
|
+
done();
|
|
751
|
+
});
|
|
752
|
+
} catch (error) {
|
|
753
|
+
log.error(`Test Failure: ${error}`);
|
|
754
|
+
done(error);
|
|
755
|
+
}
|
|
756
|
+
});
|
|
757
|
+
it('sampleProperties.json should contain generic adapter properties', (done) => {
|
|
758
|
+
try {
|
|
759
|
+
const sampleDotJson = require('../../sampleProperties.json');
|
|
760
|
+
assert.notEqual(-1, sampleDotJson.id.indexOf('kentik_v5'));
|
|
761
|
+
assert.equal('KentikV5', sampleDotJson.type);
|
|
762
|
+
assert.notEqual(undefined, sampleDotJson.properties);
|
|
763
|
+
assert.notEqual(null, sampleDotJson.properties);
|
|
764
|
+
assert.notEqual('', sampleDotJson.properties);
|
|
765
|
+
assert.notEqual(undefined, sampleDotJson.properties.host);
|
|
766
|
+
assert.notEqual(undefined, sampleDotJson.properties.port);
|
|
767
|
+
assert.notEqual(undefined, sampleDotJson.properties.stub);
|
|
768
|
+
assert.notEqual(undefined, sampleDotJson.properties.protocol);
|
|
769
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication);
|
|
770
|
+
assert.notEqual(null, sampleDotJson.properties.authentication);
|
|
771
|
+
assert.notEqual('', sampleDotJson.properties.authentication);
|
|
772
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.auth_method);
|
|
773
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.username);
|
|
774
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.password);
|
|
775
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.token);
|
|
776
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.invalid_token_error);
|
|
777
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.token_timeout);
|
|
778
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.token_cache);
|
|
779
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.auth_field);
|
|
780
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.auth_field_format);
|
|
781
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.auth_logging);
|
|
782
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.client_id);
|
|
783
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.client_secret);
|
|
784
|
+
assert.notEqual(undefined, sampleDotJson.properties.authentication.grant_type);
|
|
785
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl);
|
|
786
|
+
assert.notEqual(null, sampleDotJson.properties.ssl);
|
|
787
|
+
assert.notEqual('', sampleDotJson.properties.ssl);
|
|
788
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.ecdhCurve);
|
|
789
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.enabled);
|
|
790
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.accept_invalid_cert);
|
|
791
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.ca_file);
|
|
792
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.key_file);
|
|
793
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.cert_file);
|
|
794
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.secure_protocol);
|
|
795
|
+
assert.notEqual(undefined, sampleDotJson.properties.ssl.ciphers);
|
|
796
|
+
assert.notEqual(undefined, sampleDotJson.properties.base_path);
|
|
797
|
+
assert.notEqual(undefined, sampleDotJson.properties.version);
|
|
798
|
+
assert.notEqual(undefined, sampleDotJson.properties.cache_location);
|
|
799
|
+
assert.notEqual(undefined, sampleDotJson.properties.encode_pathvars);
|
|
800
|
+
assert.notEqual(undefined, sampleDotJson.properties.encode_queryvars);
|
|
801
|
+
assert.notEqual(undefined, sampleDotJson.properties.save_metric);
|
|
802
|
+
assert.notEqual(undefined, sampleDotJson.properties.healthcheck);
|
|
803
|
+
assert.notEqual(null, sampleDotJson.properties.healthcheck);
|
|
804
|
+
assert.notEqual('', sampleDotJson.properties.healthcheck);
|
|
805
|
+
assert.notEqual(undefined, sampleDotJson.properties.healthcheck.type);
|
|
806
|
+
assert.notEqual(undefined, sampleDotJson.properties.healthcheck.frequency);
|
|
807
|
+
assert.notEqual(undefined, sampleDotJson.properties.healthcheck.query_object);
|
|
808
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle);
|
|
809
|
+
assert.notEqual(null, sampleDotJson.properties.throttle);
|
|
810
|
+
assert.notEqual('', sampleDotJson.properties.throttle);
|
|
811
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.throttle_enabled);
|
|
812
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.number_pronghorns);
|
|
813
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.sync_async);
|
|
814
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.max_in_queue);
|
|
815
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.concurrent_max);
|
|
816
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.expire_timeout);
|
|
817
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.avg_runtime);
|
|
818
|
+
assert.notEqual(undefined, sampleDotJson.properties.throttle.priorities);
|
|
819
|
+
assert.notEqual(undefined, sampleDotJson.properties.request);
|
|
820
|
+
assert.notEqual(null, sampleDotJson.properties.request);
|
|
821
|
+
assert.notEqual('', sampleDotJson.properties.request);
|
|
822
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.number_redirects);
|
|
823
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.number_retries);
|
|
824
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.limit_retry_error);
|
|
825
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.failover_codes);
|
|
826
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.attempt_timeout);
|
|
827
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.global_request);
|
|
828
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.global_request.payload);
|
|
829
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.global_request.uriOptions);
|
|
830
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.global_request.addlHeaders);
|
|
831
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.global_request.authData);
|
|
832
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.healthcheck_on_timeout);
|
|
833
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.return_raw);
|
|
834
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.archiving);
|
|
835
|
+
assert.notEqual(undefined, sampleDotJson.properties.request.return_request);
|
|
836
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy);
|
|
837
|
+
assert.notEqual(null, sampleDotJson.properties.proxy);
|
|
838
|
+
assert.notEqual('', sampleDotJson.properties.proxy);
|
|
839
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy.enabled);
|
|
840
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy.host);
|
|
841
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy.port);
|
|
842
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy.protocol);
|
|
843
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy.username);
|
|
844
|
+
assert.notEqual(undefined, sampleDotJson.properties.proxy.password);
|
|
845
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo);
|
|
846
|
+
assert.notEqual(null, sampleDotJson.properties.mongo);
|
|
847
|
+
assert.notEqual('', sampleDotJson.properties.mongo);
|
|
848
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.host);
|
|
849
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.port);
|
|
850
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.database);
|
|
851
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.username);
|
|
852
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.password);
|
|
853
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.replSet);
|
|
854
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl);
|
|
855
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.enabled);
|
|
856
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.accept_invalid_cert);
|
|
857
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.ca_file);
|
|
858
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.key_file);
|
|
859
|
+
assert.notEqual(undefined, sampleDotJson.properties.mongo.db_ssl.cert_file);
|
|
860
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker);
|
|
861
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.getDevice);
|
|
862
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.getDevicesFiltered);
|
|
863
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.isAlive);
|
|
864
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.getConfig);
|
|
865
|
+
assert.notEqual(undefined, sampleDotJson.properties.devicebroker.getCount);
|
|
866
|
+
done();
|
|
867
|
+
} catch (error) {
|
|
868
|
+
log.error(`Test Failure: ${error}`);
|
|
869
|
+
done(error);
|
|
870
|
+
}
|
|
871
|
+
});
|
|
872
|
+
});
|
|
873
|
+
|
|
874
|
+
describe('#checkProperties', () => {
|
|
875
|
+
it('should have a checkProperties function', (done) => {
|
|
876
|
+
try {
|
|
877
|
+
assert.equal(true, typeof a.checkProperties === 'function');
|
|
878
|
+
done();
|
|
879
|
+
} catch (error) {
|
|
880
|
+
log.error(`Test Failure: ${error}`);
|
|
881
|
+
done(error);
|
|
882
|
+
}
|
|
883
|
+
});
|
|
884
|
+
it('the sample properties should be good - if failure change the log level', (done) => {
|
|
885
|
+
try {
|
|
886
|
+
const samplePropsJson = require('../../sampleProperties.json');
|
|
887
|
+
const clean = a.checkProperties(samplePropsJson.properties);
|
|
888
|
+
|
|
889
|
+
try {
|
|
890
|
+
assert.notEqual(0, Object.keys(clean));
|
|
891
|
+
assert.equal(undefined, clean.exception);
|
|
892
|
+
assert.notEqual(undefined, clean.host);
|
|
893
|
+
assert.notEqual(null, clean.host);
|
|
894
|
+
assert.notEqual('', clean.host);
|
|
895
|
+
done();
|
|
896
|
+
} catch (err) {
|
|
897
|
+
log.error(`Test Failure: ${err}`);
|
|
898
|
+
done(err);
|
|
899
|
+
}
|
|
900
|
+
} catch (error) {
|
|
901
|
+
log.error(`Adapter Exception: ${error}`);
|
|
902
|
+
done(error);
|
|
903
|
+
}
|
|
904
|
+
}).timeout(attemptTimeout);
|
|
905
|
+
});
|
|
906
|
+
|
|
907
|
+
describe('README.md', () => {
|
|
908
|
+
it('should have a README', (done) => {
|
|
909
|
+
try {
|
|
910
|
+
fs.exists('README.md', (val) => {
|
|
911
|
+
assert.equal(true, val);
|
|
912
|
+
done();
|
|
913
|
+
});
|
|
914
|
+
} catch (error) {
|
|
915
|
+
log.error(`Test Failure: ${error}`);
|
|
916
|
+
done(error);
|
|
917
|
+
}
|
|
918
|
+
});
|
|
919
|
+
it('README.md should be customized', (done) => {
|
|
920
|
+
try {
|
|
921
|
+
fs.readFile('README.md', 'utf8', (err, data) => {
|
|
922
|
+
assert.equal(-1, data.indexOf('[System]'));
|
|
923
|
+
assert.equal(-1, data.indexOf('[system]'));
|
|
924
|
+
assert.equal(-1, data.indexOf('[version]'));
|
|
925
|
+
assert.equal(-1, data.indexOf('[namespace]'));
|
|
926
|
+
done();
|
|
927
|
+
});
|
|
928
|
+
} catch (error) {
|
|
929
|
+
log.error(`Test Failure: ${error}`);
|
|
930
|
+
done(error);
|
|
931
|
+
}
|
|
932
|
+
});
|
|
933
|
+
});
|
|
934
|
+
|
|
935
|
+
describe('#connect', () => {
|
|
936
|
+
it('should have a connect function', (done) => {
|
|
937
|
+
try {
|
|
938
|
+
assert.equal(true, typeof a.connect === 'function');
|
|
939
|
+
done();
|
|
940
|
+
} catch (error) {
|
|
941
|
+
log.error(`Test Failure: ${error}`);
|
|
942
|
+
done(error);
|
|
943
|
+
}
|
|
944
|
+
});
|
|
945
|
+
});
|
|
946
|
+
|
|
947
|
+
describe('#healthCheck', () => {
|
|
948
|
+
it('should have a healthCheck function', (done) => {
|
|
949
|
+
try {
|
|
950
|
+
assert.equal(true, typeof a.healthCheck === 'function');
|
|
951
|
+
done();
|
|
952
|
+
} catch (error) {
|
|
953
|
+
log.error(`Test Failure: ${error}`);
|
|
954
|
+
done(error);
|
|
955
|
+
}
|
|
956
|
+
});
|
|
957
|
+
});
|
|
958
|
+
|
|
959
|
+
describe('#iapUpdateAdapterConfiguration', () => {
|
|
960
|
+
it('should have a iapUpdateAdapterConfiguration function', (done) => {
|
|
961
|
+
try {
|
|
962
|
+
assert.equal(true, typeof a.iapUpdateAdapterConfiguration === 'function');
|
|
963
|
+
done();
|
|
964
|
+
} catch (error) {
|
|
965
|
+
log.error(`Test Failure: ${error}`);
|
|
966
|
+
done(error);
|
|
967
|
+
}
|
|
968
|
+
});
|
|
969
|
+
});
|
|
970
|
+
|
|
971
|
+
describe('#iapFindAdapterPath', () => {
|
|
972
|
+
it('should have a iapFindAdapterPath function', (done) => {
|
|
973
|
+
try {
|
|
974
|
+
assert.equal(true, typeof a.iapFindAdapterPath === 'function');
|
|
975
|
+
done();
|
|
976
|
+
} catch (error) {
|
|
977
|
+
log.error(`Test Failure: ${error}`);
|
|
978
|
+
done(error);
|
|
979
|
+
}
|
|
980
|
+
});
|
|
981
|
+
it('iapFindAdapterPath should find atleast one path that matches', (done) => {
|
|
982
|
+
try {
|
|
983
|
+
a.iapFindAdapterPath('{base_path}/{version}', (data, error) => {
|
|
984
|
+
try {
|
|
985
|
+
assert.equal(undefined, error);
|
|
986
|
+
assert.notEqual(undefined, data);
|
|
987
|
+
assert.notEqual(null, data);
|
|
988
|
+
assert.equal(true, data.found);
|
|
989
|
+
assert.notEqual(undefined, data.foundIn);
|
|
990
|
+
assert.notEqual(null, data.foundIn);
|
|
991
|
+
assert.notEqual(0, data.foundIn.length);
|
|
992
|
+
done();
|
|
993
|
+
} catch (err) {
|
|
994
|
+
log.error(`Test Failure: ${err}`);
|
|
995
|
+
done(err);
|
|
996
|
+
}
|
|
997
|
+
});
|
|
998
|
+
} catch (error) {
|
|
999
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1000
|
+
done(error);
|
|
1001
|
+
}
|
|
1002
|
+
}).timeout(attemptTimeout);
|
|
1003
|
+
});
|
|
1004
|
+
|
|
1005
|
+
describe('#iapSuspendAdapter', () => {
|
|
1006
|
+
it('should have a iapSuspendAdapter function', (done) => {
|
|
1007
|
+
try {
|
|
1008
|
+
assert.equal(true, typeof a.iapSuspendAdapter === 'function');
|
|
1009
|
+
done();
|
|
1010
|
+
} catch (error) {
|
|
1011
|
+
log.error(`Test Failure: ${error}`);
|
|
1012
|
+
done(error);
|
|
1013
|
+
}
|
|
1014
|
+
});
|
|
1015
|
+
});
|
|
1016
|
+
|
|
1017
|
+
describe('#iapUnsuspendAdapter', () => {
|
|
1018
|
+
it('should have a iapUnsuspendAdapter function', (done) => {
|
|
1019
|
+
try {
|
|
1020
|
+
assert.equal(true, typeof a.iapUnsuspendAdapter === 'function');
|
|
1021
|
+
done();
|
|
1022
|
+
} catch (error) {
|
|
1023
|
+
log.error(`Test Failure: ${error}`);
|
|
1024
|
+
done(error);
|
|
1025
|
+
}
|
|
1026
|
+
});
|
|
1027
|
+
});
|
|
1028
|
+
|
|
1029
|
+
describe('#iapGetAdapterQueue', () => {
|
|
1030
|
+
it('should have a iapGetAdapterQueue function', (done) => {
|
|
1031
|
+
try {
|
|
1032
|
+
assert.equal(true, typeof a.iapGetAdapterQueue === 'function');
|
|
1033
|
+
done();
|
|
1034
|
+
} catch (error) {
|
|
1035
|
+
log.error(`Test Failure: ${error}`);
|
|
1036
|
+
done(error);
|
|
1037
|
+
}
|
|
1038
|
+
});
|
|
1039
|
+
});
|
|
1040
|
+
|
|
1041
|
+
describe('#iapTroubleshootAdapter', () => {
|
|
1042
|
+
it('should have a iapTroubleshootAdapter function', (done) => {
|
|
1043
|
+
try {
|
|
1044
|
+
assert.equal(true, typeof a.iapTroubleshootAdapter === 'function');
|
|
1045
|
+
done();
|
|
1046
|
+
} catch (error) {
|
|
1047
|
+
log.error(`Test Failure: ${error}`);
|
|
1048
|
+
done(error);
|
|
1049
|
+
}
|
|
1050
|
+
});
|
|
1051
|
+
});
|
|
1052
|
+
|
|
1053
|
+
describe('#iapRunAdapterHealthcheck', () => {
|
|
1054
|
+
it('should have a iapRunAdapterHealthcheck function', (done) => {
|
|
1055
|
+
try {
|
|
1056
|
+
assert.equal(true, typeof a.iapRunAdapterHealthcheck === 'function');
|
|
1057
|
+
done();
|
|
1058
|
+
} catch (error) {
|
|
1059
|
+
log.error(`Test Failure: ${error}`);
|
|
1060
|
+
done(error);
|
|
1061
|
+
}
|
|
1062
|
+
});
|
|
1063
|
+
});
|
|
1064
|
+
|
|
1065
|
+
describe('#iapRunAdapterConnectivity', () => {
|
|
1066
|
+
it('should have a iapRunAdapterConnectivity function', (done) => {
|
|
1067
|
+
try {
|
|
1068
|
+
assert.equal(true, typeof a.iapRunAdapterConnectivity === 'function');
|
|
1069
|
+
done();
|
|
1070
|
+
} catch (error) {
|
|
1071
|
+
log.error(`Test Failure: ${error}`);
|
|
1072
|
+
done(error);
|
|
1073
|
+
}
|
|
1074
|
+
});
|
|
1075
|
+
});
|
|
1076
|
+
|
|
1077
|
+
describe('#iapRunAdapterBasicGet', () => {
|
|
1078
|
+
it('should have a iapRunAdapterBasicGet function', (done) => {
|
|
1079
|
+
try {
|
|
1080
|
+
assert.equal(true, typeof a.iapRunAdapterBasicGet === 'function');
|
|
1081
|
+
done();
|
|
1082
|
+
} catch (error) {
|
|
1083
|
+
log.error(`Test Failure: ${error}`);
|
|
1084
|
+
done(error);
|
|
1085
|
+
}
|
|
1086
|
+
});
|
|
1087
|
+
});
|
|
1088
|
+
|
|
1089
|
+
describe('#iapMoveAdapterEntitiesToDB', () => {
|
|
1090
|
+
it('should have a iapMoveAdapterEntitiesToDB function', (done) => {
|
|
1091
|
+
try {
|
|
1092
|
+
assert.equal(true, typeof a.iapMoveAdapterEntitiesToDB === 'function');
|
|
1093
|
+
done();
|
|
1094
|
+
} catch (error) {
|
|
1095
|
+
log.error(`Test Failure: ${error}`);
|
|
1096
|
+
done(error);
|
|
1097
|
+
}
|
|
1098
|
+
});
|
|
1099
|
+
});
|
|
1100
|
+
|
|
1101
|
+
describe('#checkActionFiles', () => {
|
|
1102
|
+
it('should have a checkActionFiles function', (done) => {
|
|
1103
|
+
try {
|
|
1104
|
+
assert.equal(true, typeof a.checkActionFiles === 'function');
|
|
1105
|
+
done();
|
|
1106
|
+
} catch (error) {
|
|
1107
|
+
log.error(`Test Failure: ${error}`);
|
|
1108
|
+
done(error);
|
|
1109
|
+
}
|
|
1110
|
+
});
|
|
1111
|
+
it('the action files should be good - if failure change the log level as most issues are warnings', (done) => {
|
|
1112
|
+
try {
|
|
1113
|
+
const clean = a.checkActionFiles();
|
|
1114
|
+
|
|
1115
|
+
try {
|
|
1116
|
+
for (let c = 0; c < clean.length; c += 1) {
|
|
1117
|
+
log.error(clean[c]);
|
|
1118
|
+
}
|
|
1119
|
+
assert.equal(0, clean.length);
|
|
1120
|
+
done();
|
|
1121
|
+
} catch (err) {
|
|
1122
|
+
log.error(`Test Failure: ${err}`);
|
|
1123
|
+
done(err);
|
|
1124
|
+
}
|
|
1125
|
+
} catch (error) {
|
|
1126
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1127
|
+
done(error);
|
|
1128
|
+
}
|
|
1129
|
+
}).timeout(attemptTimeout);
|
|
1130
|
+
});
|
|
1131
|
+
|
|
1132
|
+
describe('#encryptProperty', () => {
|
|
1133
|
+
it('should have a encryptProperty function', (done) => {
|
|
1134
|
+
try {
|
|
1135
|
+
assert.equal(true, typeof a.encryptProperty === 'function');
|
|
1136
|
+
done();
|
|
1137
|
+
} catch (error) {
|
|
1138
|
+
log.error(`Test Failure: ${error}`);
|
|
1139
|
+
done(error);
|
|
1140
|
+
}
|
|
1141
|
+
});
|
|
1142
|
+
it('should get base64 encoded property', (done) => {
|
|
1143
|
+
try {
|
|
1144
|
+
a.encryptProperty('testing', 'base64', (data, error) => {
|
|
1145
|
+
try {
|
|
1146
|
+
assert.equal(undefined, error);
|
|
1147
|
+
assert.notEqual(undefined, data);
|
|
1148
|
+
assert.notEqual(null, data);
|
|
1149
|
+
assert.notEqual(undefined, data.response);
|
|
1150
|
+
assert.notEqual(null, data.response);
|
|
1151
|
+
assert.equal(0, data.response.indexOf('{code}'));
|
|
1152
|
+
done();
|
|
1153
|
+
} catch (err) {
|
|
1154
|
+
log.error(`Test Failure: ${err}`);
|
|
1155
|
+
done(err);
|
|
1156
|
+
}
|
|
1157
|
+
});
|
|
1158
|
+
} catch (error) {
|
|
1159
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1160
|
+
done(error);
|
|
1161
|
+
}
|
|
1162
|
+
}).timeout(attemptTimeout);
|
|
1163
|
+
it('should get encrypted property', (done) => {
|
|
1164
|
+
try {
|
|
1165
|
+
a.encryptProperty('testing', 'encrypt', (data, error) => {
|
|
1166
|
+
try {
|
|
1167
|
+
assert.equal(undefined, error);
|
|
1168
|
+
assert.notEqual(undefined, data);
|
|
1169
|
+
assert.notEqual(null, data);
|
|
1170
|
+
assert.notEqual(undefined, data.response);
|
|
1171
|
+
assert.notEqual(null, data.response);
|
|
1172
|
+
assert.equal(0, data.response.indexOf('{crypt}'));
|
|
1173
|
+
done();
|
|
1174
|
+
} catch (err) {
|
|
1175
|
+
log.error(`Test Failure: ${err}`);
|
|
1176
|
+
done(err);
|
|
1177
|
+
}
|
|
1178
|
+
});
|
|
1179
|
+
} catch (error) {
|
|
1180
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1181
|
+
done(error);
|
|
1182
|
+
}
|
|
1183
|
+
}).timeout(attemptTimeout);
|
|
1184
|
+
});
|
|
1185
|
+
|
|
1186
|
+
// describe('#iapHasAdapterEntity', () => {
|
|
1187
|
+
// it('should have a iapHasAdapterEntity function', (done) => {
|
|
1188
|
+
// try {
|
|
1189
|
+
// assert.equal(true, typeof a.iapHasAdapterEntity === 'function');
|
|
1190
|
+
// done();
|
|
1191
|
+
// } catch (error) {
|
|
1192
|
+
// log.error(`Test Failure: ${error}`);
|
|
1193
|
+
// done(error);
|
|
1194
|
+
// }
|
|
1195
|
+
// });
|
|
1196
|
+
// it('should find entity', (done) => {
|
|
1197
|
+
// try {
|
|
1198
|
+
// a.iapHasAdapterEntity('template_entity', // 'a9e9c33dc61122760072455df62663d2', (data) => {
|
|
1199
|
+
// try {
|
|
1200
|
+
// assert.equal(true, data[0]);
|
|
1201
|
+
// done();
|
|
1202
|
+
// } catch (err) {
|
|
1203
|
+
// log.error(`Test Failure: ${err}`);
|
|
1204
|
+
// done(err);
|
|
1205
|
+
// }
|
|
1206
|
+
// });
|
|
1207
|
+
// } catch (error) {
|
|
1208
|
+
// log.error(`Adapter Exception: ${error}`);
|
|
1209
|
+
// done(error);
|
|
1210
|
+
// }
|
|
1211
|
+
// }).timeout(attemptTimeout);
|
|
1212
|
+
// it('should not find entity', (done) => {
|
|
1213
|
+
// try {
|
|
1214
|
+
// a.iapHasAdapterEntity('template_entity', 'blah', (data) => {
|
|
1215
|
+
// try {
|
|
1216
|
+
// assert.equal(false, data[0]);
|
|
1217
|
+
// done();
|
|
1218
|
+
// } catch (err) {
|
|
1219
|
+
// log.error(`Test Failure: ${err}`);
|
|
1220
|
+
// done(err);
|
|
1221
|
+
// }
|
|
1222
|
+
// });
|
|
1223
|
+
// } catch (error) {
|
|
1224
|
+
// log.error(`Adapter Exception: ${error}`);
|
|
1225
|
+
// done(error);
|
|
1226
|
+
// }
|
|
1227
|
+
// }).timeout(attemptTimeout);
|
|
1228
|
+
// });
|
|
1229
|
+
|
|
1230
|
+
describe('#hasEntities', () => {
|
|
1231
|
+
it('should have a hasEntities function', (done) => {
|
|
1232
|
+
try {
|
|
1233
|
+
assert.equal(true, typeof a.hasEntities === 'function');
|
|
1234
|
+
done();
|
|
1235
|
+
} catch (error) {
|
|
1236
|
+
log.error(`Test Failure: ${error}`);
|
|
1237
|
+
done(error);
|
|
1238
|
+
}
|
|
1239
|
+
});
|
|
1240
|
+
});
|
|
1241
|
+
|
|
1242
|
+
describe('#getDevice', () => {
|
|
1243
|
+
it('should have a getDevice function', (done) => {
|
|
1244
|
+
try {
|
|
1245
|
+
assert.equal(true, typeof a.getDevice === 'function');
|
|
1246
|
+
done();
|
|
1247
|
+
} catch (error) {
|
|
1248
|
+
log.error(`Test Failure: ${error}`);
|
|
1249
|
+
done(error);
|
|
1250
|
+
}
|
|
1251
|
+
});
|
|
1252
|
+
});
|
|
1253
|
+
|
|
1254
|
+
describe('#getDevicesFiltered', () => {
|
|
1255
|
+
it('should have a getDevicesFiltered function', (done) => {
|
|
1256
|
+
try {
|
|
1257
|
+
assert.equal(true, typeof a.getDevicesFiltered === 'function');
|
|
1258
|
+
done();
|
|
1259
|
+
} catch (error) {
|
|
1260
|
+
log.error(`Test Failure: ${error}`);
|
|
1261
|
+
done(error);
|
|
1262
|
+
}
|
|
1263
|
+
});
|
|
1264
|
+
});
|
|
1265
|
+
|
|
1266
|
+
describe('#isAlive', () => {
|
|
1267
|
+
it('should have a isAlive function', (done) => {
|
|
1268
|
+
try {
|
|
1269
|
+
assert.equal(true, typeof a.isAlive === 'function');
|
|
1270
|
+
done();
|
|
1271
|
+
} catch (error) {
|
|
1272
|
+
log.error(`Test Failure: ${error}`);
|
|
1273
|
+
done(error);
|
|
1274
|
+
}
|
|
1275
|
+
});
|
|
1276
|
+
});
|
|
1277
|
+
|
|
1278
|
+
describe('#getConfig', () => {
|
|
1279
|
+
it('should have a getConfig function', (done) => {
|
|
1280
|
+
try {
|
|
1281
|
+
assert.equal(true, typeof a.getConfig === 'function');
|
|
1282
|
+
done();
|
|
1283
|
+
} catch (error) {
|
|
1284
|
+
log.error(`Test Failure: ${error}`);
|
|
1285
|
+
done(error);
|
|
1286
|
+
}
|
|
1287
|
+
});
|
|
1288
|
+
});
|
|
1289
|
+
|
|
1290
|
+
describe('#iapGetDeviceCount', () => {
|
|
1291
|
+
it('should have a iapGetDeviceCount function', (done) => {
|
|
1292
|
+
try {
|
|
1293
|
+
assert.equal(true, typeof a.iapGetDeviceCount === 'function');
|
|
1294
|
+
done();
|
|
1295
|
+
} catch (error) {
|
|
1296
|
+
log.error(`Test Failure: ${error}`);
|
|
1297
|
+
done(error);
|
|
1298
|
+
}
|
|
1299
|
+
});
|
|
1300
|
+
});
|
|
1301
|
+
|
|
1302
|
+
/*
|
|
1303
|
+
-----------------------------------------------------------------------
|
|
1304
|
+
-----------------------------------------------------------------------
|
|
1305
|
+
*** All code above this comment will be replaced during a migration ***
|
|
1306
|
+
******************* DO NOT REMOVE THIS COMMENT BLOCK ******************
|
|
1307
|
+
-----------------------------------------------------------------------
|
|
1308
|
+
-----------------------------------------------------------------------
|
|
1309
|
+
*/
|
|
1310
|
+
|
|
1311
|
+
describe('#runQuery - errors', () => {
|
|
1312
|
+
it('should have a runQuery function', (done) => {
|
|
1313
|
+
try {
|
|
1314
|
+
assert.equal(true, typeof a.runQuery === 'function');
|
|
1315
|
+
done();
|
|
1316
|
+
} catch (error) {
|
|
1317
|
+
log.error(`Test Failure: ${error}`);
|
|
1318
|
+
done(error);
|
|
1319
|
+
}
|
|
1320
|
+
}).timeout(attemptTimeout);
|
|
1321
|
+
it('should error if - missing body', (done) => {
|
|
1322
|
+
try {
|
|
1323
|
+
a.runQuery(null, (data, error) => {
|
|
1324
|
+
try {
|
|
1325
|
+
const displayE = 'body is required';
|
|
1326
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-runQuery', displayE);
|
|
1327
|
+
done();
|
|
1328
|
+
} catch (err) {
|
|
1329
|
+
log.error(`Test Failure: ${err}`);
|
|
1330
|
+
done(err);
|
|
1331
|
+
}
|
|
1332
|
+
});
|
|
1333
|
+
} catch (error) {
|
|
1334
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1335
|
+
done(error);
|
|
1336
|
+
}
|
|
1337
|
+
}).timeout(attemptTimeout);
|
|
1338
|
+
});
|
|
1339
|
+
|
|
1340
|
+
describe('#queryUrl - errors', () => {
|
|
1341
|
+
it('should have a queryUrl function', (done) => {
|
|
1342
|
+
try {
|
|
1343
|
+
assert.equal(true, typeof a.queryUrl === 'function');
|
|
1344
|
+
done();
|
|
1345
|
+
} catch (error) {
|
|
1346
|
+
log.error(`Test Failure: ${error}`);
|
|
1347
|
+
done(error);
|
|
1348
|
+
}
|
|
1349
|
+
}).timeout(attemptTimeout);
|
|
1350
|
+
it('should error if - missing body', (done) => {
|
|
1351
|
+
try {
|
|
1352
|
+
a.queryUrl(null, (data, error) => {
|
|
1353
|
+
try {
|
|
1354
|
+
const displayE = 'body is required';
|
|
1355
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-queryUrl', displayE);
|
|
1356
|
+
done();
|
|
1357
|
+
} catch (err) {
|
|
1358
|
+
log.error(`Test Failure: ${err}`);
|
|
1359
|
+
done(err);
|
|
1360
|
+
}
|
|
1361
|
+
});
|
|
1362
|
+
} catch (error) {
|
|
1363
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1364
|
+
done(error);
|
|
1365
|
+
}
|
|
1366
|
+
}).timeout(attemptTimeout);
|
|
1367
|
+
});
|
|
1368
|
+
|
|
1369
|
+
describe('#topxdata - errors', () => {
|
|
1370
|
+
it('should have a topxdata function', (done) => {
|
|
1371
|
+
try {
|
|
1372
|
+
assert.equal(true, typeof a.topxdata === 'function');
|
|
1373
|
+
done();
|
|
1374
|
+
} catch (error) {
|
|
1375
|
+
log.error(`Test Failure: ${error}`);
|
|
1376
|
+
done(error);
|
|
1377
|
+
}
|
|
1378
|
+
}).timeout(attemptTimeout);
|
|
1379
|
+
it('should error if - missing body', (done) => {
|
|
1380
|
+
try {
|
|
1381
|
+
a.topxdata(null, (data, error) => {
|
|
1382
|
+
try {
|
|
1383
|
+
const displayE = 'body is required';
|
|
1384
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-topxdata', displayE);
|
|
1385
|
+
done();
|
|
1386
|
+
} catch (err) {
|
|
1387
|
+
log.error(`Test Failure: ${err}`);
|
|
1388
|
+
done(err);
|
|
1389
|
+
}
|
|
1390
|
+
});
|
|
1391
|
+
} catch (error) {
|
|
1392
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1393
|
+
done(error);
|
|
1394
|
+
}
|
|
1395
|
+
}).timeout(attemptTimeout);
|
|
1396
|
+
});
|
|
1397
|
+
|
|
1398
|
+
describe('#topxchart - errors', () => {
|
|
1399
|
+
it('should have a topxchart function', (done) => {
|
|
1400
|
+
try {
|
|
1401
|
+
assert.equal(true, typeof a.topxchart === 'function');
|
|
1402
|
+
done();
|
|
1403
|
+
} catch (error) {
|
|
1404
|
+
log.error(`Test Failure: ${error}`);
|
|
1405
|
+
done(error);
|
|
1406
|
+
}
|
|
1407
|
+
}).timeout(attemptTimeout);
|
|
1408
|
+
it('should error if - missing body', (done) => {
|
|
1409
|
+
try {
|
|
1410
|
+
a.topxchart(null, (data, error) => {
|
|
1411
|
+
try {
|
|
1412
|
+
const displayE = 'body is required';
|
|
1413
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-topxchart', displayE);
|
|
1414
|
+
done();
|
|
1415
|
+
} catch (err) {
|
|
1416
|
+
log.error(`Test Failure: ${err}`);
|
|
1417
|
+
done(err);
|
|
1418
|
+
}
|
|
1419
|
+
});
|
|
1420
|
+
} catch (error) {
|
|
1421
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1422
|
+
done(error);
|
|
1423
|
+
}
|
|
1424
|
+
}).timeout(attemptTimeout);
|
|
1425
|
+
});
|
|
1426
|
+
|
|
1427
|
+
describe('#findUsers - errors', () => {
|
|
1428
|
+
it('should have a findUsers function', (done) => {
|
|
1429
|
+
try {
|
|
1430
|
+
assert.equal(true, typeof a.findUsers === 'function');
|
|
1431
|
+
done();
|
|
1432
|
+
} catch (error) {
|
|
1433
|
+
log.error(`Test Failure: ${error}`);
|
|
1434
|
+
done(error);
|
|
1435
|
+
}
|
|
1436
|
+
}).timeout(attemptTimeout);
|
|
1437
|
+
});
|
|
1438
|
+
|
|
1439
|
+
describe('#findUser - errors', () => {
|
|
1440
|
+
it('should have a findUser function', (done) => {
|
|
1441
|
+
try {
|
|
1442
|
+
assert.equal(true, typeof a.findUser === 'function');
|
|
1443
|
+
done();
|
|
1444
|
+
} catch (error) {
|
|
1445
|
+
log.error(`Test Failure: ${error}`);
|
|
1446
|
+
done(error);
|
|
1447
|
+
}
|
|
1448
|
+
}).timeout(attemptTimeout);
|
|
1449
|
+
it('should error if - missing userId', (done) => {
|
|
1450
|
+
try {
|
|
1451
|
+
a.findUser(null, (data, error) => {
|
|
1452
|
+
try {
|
|
1453
|
+
const displayE = 'userId is required';
|
|
1454
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-findUser', displayE);
|
|
1455
|
+
done();
|
|
1456
|
+
} catch (err) {
|
|
1457
|
+
log.error(`Test Failure: ${err}`);
|
|
1458
|
+
done(err);
|
|
1459
|
+
}
|
|
1460
|
+
});
|
|
1461
|
+
} catch (error) {
|
|
1462
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1463
|
+
done(error);
|
|
1464
|
+
}
|
|
1465
|
+
}).timeout(attemptTimeout);
|
|
1466
|
+
});
|
|
1467
|
+
|
|
1468
|
+
describe('#updateUser - errors', () => {
|
|
1469
|
+
it('should have a updateUser function', (done) => {
|
|
1470
|
+
try {
|
|
1471
|
+
assert.equal(true, typeof a.updateUser === 'function');
|
|
1472
|
+
done();
|
|
1473
|
+
} catch (error) {
|
|
1474
|
+
log.error(`Test Failure: ${error}`);
|
|
1475
|
+
done(error);
|
|
1476
|
+
}
|
|
1477
|
+
}).timeout(attemptTimeout);
|
|
1478
|
+
it('should error if - missing userId', (done) => {
|
|
1479
|
+
try {
|
|
1480
|
+
a.updateUser(null, null, (data, error) => {
|
|
1481
|
+
try {
|
|
1482
|
+
const displayE = 'userId is required';
|
|
1483
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateUser', displayE);
|
|
1484
|
+
done();
|
|
1485
|
+
} catch (err) {
|
|
1486
|
+
log.error(`Test Failure: ${err}`);
|
|
1487
|
+
done(err);
|
|
1488
|
+
}
|
|
1489
|
+
});
|
|
1490
|
+
} catch (error) {
|
|
1491
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1492
|
+
done(error);
|
|
1493
|
+
}
|
|
1494
|
+
}).timeout(attemptTimeout);
|
|
1495
|
+
it('should error if - missing body', (done) => {
|
|
1496
|
+
try {
|
|
1497
|
+
a.updateUser('fakeparam', null, (data, error) => {
|
|
1498
|
+
try {
|
|
1499
|
+
const displayE = 'body is required';
|
|
1500
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateUser', displayE);
|
|
1501
|
+
done();
|
|
1502
|
+
} catch (err) {
|
|
1503
|
+
log.error(`Test Failure: ${err}`);
|
|
1504
|
+
done(err);
|
|
1505
|
+
}
|
|
1506
|
+
});
|
|
1507
|
+
} catch (error) {
|
|
1508
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1509
|
+
done(error);
|
|
1510
|
+
}
|
|
1511
|
+
}).timeout(attemptTimeout);
|
|
1512
|
+
});
|
|
1513
|
+
|
|
1514
|
+
describe('#deleteUser - errors', () => {
|
|
1515
|
+
it('should have a deleteUser function', (done) => {
|
|
1516
|
+
try {
|
|
1517
|
+
assert.equal(true, typeof a.deleteUser === 'function');
|
|
1518
|
+
done();
|
|
1519
|
+
} catch (error) {
|
|
1520
|
+
log.error(`Test Failure: ${error}`);
|
|
1521
|
+
done(error);
|
|
1522
|
+
}
|
|
1523
|
+
}).timeout(attemptTimeout);
|
|
1524
|
+
it('should error if - missing userId', (done) => {
|
|
1525
|
+
try {
|
|
1526
|
+
a.deleteUser(null, (data, error) => {
|
|
1527
|
+
try {
|
|
1528
|
+
const displayE = 'userId is required';
|
|
1529
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deleteUser', displayE);
|
|
1530
|
+
done();
|
|
1531
|
+
} catch (err) {
|
|
1532
|
+
log.error(`Test Failure: ${err}`);
|
|
1533
|
+
done(err);
|
|
1534
|
+
}
|
|
1535
|
+
});
|
|
1536
|
+
} catch (error) {
|
|
1537
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1538
|
+
done(error);
|
|
1539
|
+
}
|
|
1540
|
+
}).timeout(attemptTimeout);
|
|
1541
|
+
});
|
|
1542
|
+
|
|
1543
|
+
describe('#createUser - errors', () => {
|
|
1544
|
+
it('should have a createUser function', (done) => {
|
|
1545
|
+
try {
|
|
1546
|
+
assert.equal(true, typeof a.createUser === 'function');
|
|
1547
|
+
done();
|
|
1548
|
+
} catch (error) {
|
|
1549
|
+
log.error(`Test Failure: ${error}`);
|
|
1550
|
+
done(error);
|
|
1551
|
+
}
|
|
1552
|
+
}).timeout(attemptTimeout);
|
|
1553
|
+
it('should error if - missing body', (done) => {
|
|
1554
|
+
try {
|
|
1555
|
+
a.createUser(null, (data, error) => {
|
|
1556
|
+
try {
|
|
1557
|
+
const displayE = 'body is required';
|
|
1558
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createUser', displayE);
|
|
1559
|
+
done();
|
|
1560
|
+
} catch (err) {
|
|
1561
|
+
log.error(`Test Failure: ${err}`);
|
|
1562
|
+
done(err);
|
|
1563
|
+
}
|
|
1564
|
+
});
|
|
1565
|
+
} catch (error) {
|
|
1566
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1567
|
+
done(error);
|
|
1568
|
+
}
|
|
1569
|
+
}).timeout(attemptTimeout);
|
|
1570
|
+
});
|
|
1571
|
+
|
|
1572
|
+
describe('#findDevices - errors', () => {
|
|
1573
|
+
it('should have a findDevices function', (done) => {
|
|
1574
|
+
try {
|
|
1575
|
+
assert.equal(true, typeof a.findDevices === 'function');
|
|
1576
|
+
done();
|
|
1577
|
+
} catch (error) {
|
|
1578
|
+
log.error(`Test Failure: ${error}`);
|
|
1579
|
+
done(error);
|
|
1580
|
+
}
|
|
1581
|
+
}).timeout(attemptTimeout);
|
|
1582
|
+
});
|
|
1583
|
+
|
|
1584
|
+
describe('#findDevice - errors', () => {
|
|
1585
|
+
it('should have a findDevice function', (done) => {
|
|
1586
|
+
try {
|
|
1587
|
+
assert.equal(true, typeof a.findDevice === 'function');
|
|
1588
|
+
done();
|
|
1589
|
+
} catch (error) {
|
|
1590
|
+
log.error(`Test Failure: ${error}`);
|
|
1591
|
+
done(error);
|
|
1592
|
+
}
|
|
1593
|
+
}).timeout(attemptTimeout);
|
|
1594
|
+
it('should error if - missing deviceId', (done) => {
|
|
1595
|
+
try {
|
|
1596
|
+
a.findDevice(null, (data, error) => {
|
|
1597
|
+
try {
|
|
1598
|
+
const displayE = 'deviceId is required';
|
|
1599
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-findDevice', displayE);
|
|
1600
|
+
done();
|
|
1601
|
+
} catch (err) {
|
|
1602
|
+
log.error(`Test Failure: ${err}`);
|
|
1603
|
+
done(err);
|
|
1604
|
+
}
|
|
1605
|
+
});
|
|
1606
|
+
} catch (error) {
|
|
1607
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1608
|
+
done(error);
|
|
1609
|
+
}
|
|
1610
|
+
}).timeout(attemptTimeout);
|
|
1611
|
+
});
|
|
1612
|
+
|
|
1613
|
+
describe('#updateDevice - errors', () => {
|
|
1614
|
+
it('should have a updateDevice function', (done) => {
|
|
1615
|
+
try {
|
|
1616
|
+
assert.equal(true, typeof a.updateDevice === 'function');
|
|
1617
|
+
done();
|
|
1618
|
+
} catch (error) {
|
|
1619
|
+
log.error(`Test Failure: ${error}`);
|
|
1620
|
+
done(error);
|
|
1621
|
+
}
|
|
1622
|
+
}).timeout(attemptTimeout);
|
|
1623
|
+
it('should error if - missing deviceId', (done) => {
|
|
1624
|
+
try {
|
|
1625
|
+
a.updateDevice(null, null, (data, error) => {
|
|
1626
|
+
try {
|
|
1627
|
+
const displayE = 'deviceId is required';
|
|
1628
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateDevice', displayE);
|
|
1629
|
+
done();
|
|
1630
|
+
} catch (err) {
|
|
1631
|
+
log.error(`Test Failure: ${err}`);
|
|
1632
|
+
done(err);
|
|
1633
|
+
}
|
|
1634
|
+
});
|
|
1635
|
+
} catch (error) {
|
|
1636
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1637
|
+
done(error);
|
|
1638
|
+
}
|
|
1639
|
+
}).timeout(attemptTimeout);
|
|
1640
|
+
it('should error if - missing body', (done) => {
|
|
1641
|
+
try {
|
|
1642
|
+
a.updateDevice('fakeparam', null, (data, error) => {
|
|
1643
|
+
try {
|
|
1644
|
+
const displayE = 'body is required';
|
|
1645
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateDevice', displayE);
|
|
1646
|
+
done();
|
|
1647
|
+
} catch (err) {
|
|
1648
|
+
log.error(`Test Failure: ${err}`);
|
|
1649
|
+
done(err);
|
|
1650
|
+
}
|
|
1651
|
+
});
|
|
1652
|
+
} catch (error) {
|
|
1653
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1654
|
+
done(error);
|
|
1655
|
+
}
|
|
1656
|
+
}).timeout(attemptTimeout);
|
|
1657
|
+
});
|
|
1658
|
+
|
|
1659
|
+
describe('#deleteDevice - errors', () => {
|
|
1660
|
+
it('should have a deleteDevice function', (done) => {
|
|
1661
|
+
try {
|
|
1662
|
+
assert.equal(true, typeof a.deleteDevice === 'function');
|
|
1663
|
+
done();
|
|
1664
|
+
} catch (error) {
|
|
1665
|
+
log.error(`Test Failure: ${error}`);
|
|
1666
|
+
done(error);
|
|
1667
|
+
}
|
|
1668
|
+
}).timeout(attemptTimeout);
|
|
1669
|
+
it('should error if - missing deviceId', (done) => {
|
|
1670
|
+
try {
|
|
1671
|
+
a.deleteDevice(null, (data, error) => {
|
|
1672
|
+
try {
|
|
1673
|
+
const displayE = 'deviceId is required';
|
|
1674
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deleteDevice', displayE);
|
|
1675
|
+
done();
|
|
1676
|
+
} catch (err) {
|
|
1677
|
+
log.error(`Test Failure: ${err}`);
|
|
1678
|
+
done(err);
|
|
1679
|
+
}
|
|
1680
|
+
});
|
|
1681
|
+
} catch (error) {
|
|
1682
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1683
|
+
done(error);
|
|
1684
|
+
}
|
|
1685
|
+
}).timeout(attemptTimeout);
|
|
1686
|
+
});
|
|
1687
|
+
|
|
1688
|
+
describe('#createDevice - errors', () => {
|
|
1689
|
+
it('should have a createDevice function', (done) => {
|
|
1690
|
+
try {
|
|
1691
|
+
assert.equal(true, typeof a.createDevice === 'function');
|
|
1692
|
+
done();
|
|
1693
|
+
} catch (error) {
|
|
1694
|
+
log.error(`Test Failure: ${error}`);
|
|
1695
|
+
done(error);
|
|
1696
|
+
}
|
|
1697
|
+
}).timeout(attemptTimeout);
|
|
1698
|
+
it('should error if - missing body', (done) => {
|
|
1699
|
+
try {
|
|
1700
|
+
a.createDevice(null, (data, error) => {
|
|
1701
|
+
try {
|
|
1702
|
+
const displayE = 'body is required';
|
|
1703
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createDevice', displayE);
|
|
1704
|
+
done();
|
|
1705
|
+
} catch (err) {
|
|
1706
|
+
log.error(`Test Failure: ${err}`);
|
|
1707
|
+
done(err);
|
|
1708
|
+
}
|
|
1709
|
+
});
|
|
1710
|
+
} catch (error) {
|
|
1711
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1712
|
+
done(error);
|
|
1713
|
+
}
|
|
1714
|
+
}).timeout(attemptTimeout);
|
|
1715
|
+
});
|
|
1716
|
+
|
|
1717
|
+
describe('#deviceApplyLabels - errors', () => {
|
|
1718
|
+
it('should have a deviceApplyLabels function', (done) => {
|
|
1719
|
+
try {
|
|
1720
|
+
assert.equal(true, typeof a.deviceApplyLabels === 'function');
|
|
1721
|
+
done();
|
|
1722
|
+
} catch (error) {
|
|
1723
|
+
log.error(`Test Failure: ${error}`);
|
|
1724
|
+
done(error);
|
|
1725
|
+
}
|
|
1726
|
+
}).timeout(attemptTimeout);
|
|
1727
|
+
it('should error if - missing deviceId', (done) => {
|
|
1728
|
+
try {
|
|
1729
|
+
a.deviceApplyLabels(null, null, (data, error) => {
|
|
1730
|
+
try {
|
|
1731
|
+
const displayE = 'deviceId is required';
|
|
1732
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deviceApplyLabels', displayE);
|
|
1733
|
+
done();
|
|
1734
|
+
} catch (err) {
|
|
1735
|
+
log.error(`Test Failure: ${err}`);
|
|
1736
|
+
done(err);
|
|
1737
|
+
}
|
|
1738
|
+
});
|
|
1739
|
+
} catch (error) {
|
|
1740
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1741
|
+
done(error);
|
|
1742
|
+
}
|
|
1743
|
+
}).timeout(attemptTimeout);
|
|
1744
|
+
it('should error if - missing body', (done) => {
|
|
1745
|
+
try {
|
|
1746
|
+
a.deviceApplyLabels('fakeparam', null, (data, error) => {
|
|
1747
|
+
try {
|
|
1748
|
+
const displayE = 'body is required';
|
|
1749
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deviceApplyLabels', displayE);
|
|
1750
|
+
done();
|
|
1751
|
+
} catch (err) {
|
|
1752
|
+
log.error(`Test Failure: ${err}`);
|
|
1753
|
+
done(err);
|
|
1754
|
+
}
|
|
1755
|
+
});
|
|
1756
|
+
} catch (error) {
|
|
1757
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1758
|
+
done(error);
|
|
1759
|
+
}
|
|
1760
|
+
}).timeout(attemptTimeout);
|
|
1761
|
+
});
|
|
1762
|
+
|
|
1763
|
+
describe('#findInterfaces - errors', () => {
|
|
1764
|
+
it('should have a findInterfaces function', (done) => {
|
|
1765
|
+
try {
|
|
1766
|
+
assert.equal(true, typeof a.findInterfaces === 'function');
|
|
1767
|
+
done();
|
|
1768
|
+
} catch (error) {
|
|
1769
|
+
log.error(`Test Failure: ${error}`);
|
|
1770
|
+
done(error);
|
|
1771
|
+
}
|
|
1772
|
+
}).timeout(attemptTimeout);
|
|
1773
|
+
it('should error if - missing deviceId', (done) => {
|
|
1774
|
+
try {
|
|
1775
|
+
a.findInterfaces(null, (data, error) => {
|
|
1776
|
+
try {
|
|
1777
|
+
const displayE = 'deviceId is required';
|
|
1778
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-findInterfaces', displayE);
|
|
1779
|
+
done();
|
|
1780
|
+
} catch (err) {
|
|
1781
|
+
log.error(`Test Failure: ${err}`);
|
|
1782
|
+
done(err);
|
|
1783
|
+
}
|
|
1784
|
+
});
|
|
1785
|
+
} catch (error) {
|
|
1786
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1787
|
+
done(error);
|
|
1788
|
+
}
|
|
1789
|
+
}).timeout(attemptTimeout);
|
|
1790
|
+
});
|
|
1791
|
+
|
|
1792
|
+
describe('#findInterface - errors', () => {
|
|
1793
|
+
it('should have a findInterface function', (done) => {
|
|
1794
|
+
try {
|
|
1795
|
+
assert.equal(true, typeof a.findInterface === 'function');
|
|
1796
|
+
done();
|
|
1797
|
+
} catch (error) {
|
|
1798
|
+
log.error(`Test Failure: ${error}`);
|
|
1799
|
+
done(error);
|
|
1800
|
+
}
|
|
1801
|
+
}).timeout(attemptTimeout);
|
|
1802
|
+
it('should error if - missing deviceId', (done) => {
|
|
1803
|
+
try {
|
|
1804
|
+
a.findInterface(null, null, (data, error) => {
|
|
1805
|
+
try {
|
|
1806
|
+
const displayE = 'deviceId is required';
|
|
1807
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-findInterface', displayE);
|
|
1808
|
+
done();
|
|
1809
|
+
} catch (err) {
|
|
1810
|
+
log.error(`Test Failure: ${err}`);
|
|
1811
|
+
done(err);
|
|
1812
|
+
}
|
|
1813
|
+
});
|
|
1814
|
+
} catch (error) {
|
|
1815
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1816
|
+
done(error);
|
|
1817
|
+
}
|
|
1818
|
+
}).timeout(attemptTimeout);
|
|
1819
|
+
it('should error if - missing interfaceId', (done) => {
|
|
1820
|
+
try {
|
|
1821
|
+
a.findInterface('fakeparam', null, (data, error) => {
|
|
1822
|
+
try {
|
|
1823
|
+
const displayE = 'interfaceId is required';
|
|
1824
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-findInterface', displayE);
|
|
1825
|
+
done();
|
|
1826
|
+
} catch (err) {
|
|
1827
|
+
log.error(`Test Failure: ${err}`);
|
|
1828
|
+
done(err);
|
|
1829
|
+
}
|
|
1830
|
+
});
|
|
1831
|
+
} catch (error) {
|
|
1832
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1833
|
+
done(error);
|
|
1834
|
+
}
|
|
1835
|
+
}).timeout(attemptTimeout);
|
|
1836
|
+
});
|
|
1837
|
+
|
|
1838
|
+
describe('#updateInterface - errors', () => {
|
|
1839
|
+
it('should have a updateInterface function', (done) => {
|
|
1840
|
+
try {
|
|
1841
|
+
assert.equal(true, typeof a.updateInterface === 'function');
|
|
1842
|
+
done();
|
|
1843
|
+
} catch (error) {
|
|
1844
|
+
log.error(`Test Failure: ${error}`);
|
|
1845
|
+
done(error);
|
|
1846
|
+
}
|
|
1847
|
+
}).timeout(attemptTimeout);
|
|
1848
|
+
it('should error if - missing deviceId', (done) => {
|
|
1849
|
+
try {
|
|
1850
|
+
a.updateInterface(null, null, null, (data, error) => {
|
|
1851
|
+
try {
|
|
1852
|
+
const displayE = 'deviceId is required';
|
|
1853
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateInterface', displayE);
|
|
1854
|
+
done();
|
|
1855
|
+
} catch (err) {
|
|
1856
|
+
log.error(`Test Failure: ${err}`);
|
|
1857
|
+
done(err);
|
|
1858
|
+
}
|
|
1859
|
+
});
|
|
1860
|
+
} catch (error) {
|
|
1861
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1862
|
+
done(error);
|
|
1863
|
+
}
|
|
1864
|
+
}).timeout(attemptTimeout);
|
|
1865
|
+
it('should error if - missing interfaceId', (done) => {
|
|
1866
|
+
try {
|
|
1867
|
+
a.updateInterface('fakeparam', null, null, (data, error) => {
|
|
1868
|
+
try {
|
|
1869
|
+
const displayE = 'interfaceId is required';
|
|
1870
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateInterface', displayE);
|
|
1871
|
+
done();
|
|
1872
|
+
} catch (err) {
|
|
1873
|
+
log.error(`Test Failure: ${err}`);
|
|
1874
|
+
done(err);
|
|
1875
|
+
}
|
|
1876
|
+
});
|
|
1877
|
+
} catch (error) {
|
|
1878
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1879
|
+
done(error);
|
|
1880
|
+
}
|
|
1881
|
+
}).timeout(attemptTimeout);
|
|
1882
|
+
it('should error if - missing body', (done) => {
|
|
1883
|
+
try {
|
|
1884
|
+
a.updateInterface('fakeparam', 'fakeparam', null, (data, error) => {
|
|
1885
|
+
try {
|
|
1886
|
+
const displayE = 'body is required';
|
|
1887
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateInterface', displayE);
|
|
1888
|
+
done();
|
|
1889
|
+
} catch (err) {
|
|
1890
|
+
log.error(`Test Failure: ${err}`);
|
|
1891
|
+
done(err);
|
|
1892
|
+
}
|
|
1893
|
+
});
|
|
1894
|
+
} catch (error) {
|
|
1895
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1896
|
+
done(error);
|
|
1897
|
+
}
|
|
1898
|
+
}).timeout(attemptTimeout);
|
|
1899
|
+
});
|
|
1900
|
+
|
|
1901
|
+
describe('#deleteInterface - errors', () => {
|
|
1902
|
+
it('should have a deleteInterface function', (done) => {
|
|
1903
|
+
try {
|
|
1904
|
+
assert.equal(true, typeof a.deleteInterface === 'function');
|
|
1905
|
+
done();
|
|
1906
|
+
} catch (error) {
|
|
1907
|
+
log.error(`Test Failure: ${error}`);
|
|
1908
|
+
done(error);
|
|
1909
|
+
}
|
|
1910
|
+
}).timeout(attemptTimeout);
|
|
1911
|
+
it('should error if - missing deviceId', (done) => {
|
|
1912
|
+
try {
|
|
1913
|
+
a.deleteInterface(null, null, (data, error) => {
|
|
1914
|
+
try {
|
|
1915
|
+
const displayE = 'deviceId is required';
|
|
1916
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deleteInterface', displayE);
|
|
1917
|
+
done();
|
|
1918
|
+
} catch (err) {
|
|
1919
|
+
log.error(`Test Failure: ${err}`);
|
|
1920
|
+
done(err);
|
|
1921
|
+
}
|
|
1922
|
+
});
|
|
1923
|
+
} catch (error) {
|
|
1924
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1925
|
+
done(error);
|
|
1926
|
+
}
|
|
1927
|
+
}).timeout(attemptTimeout);
|
|
1928
|
+
it('should error if - missing interfaceId', (done) => {
|
|
1929
|
+
try {
|
|
1930
|
+
a.deleteInterface('fakeparam', null, (data, error) => {
|
|
1931
|
+
try {
|
|
1932
|
+
const displayE = 'interfaceId is required';
|
|
1933
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deleteInterface', displayE);
|
|
1934
|
+
done();
|
|
1935
|
+
} catch (err) {
|
|
1936
|
+
log.error(`Test Failure: ${err}`);
|
|
1937
|
+
done(err);
|
|
1938
|
+
}
|
|
1939
|
+
});
|
|
1940
|
+
} catch (error) {
|
|
1941
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1942
|
+
done(error);
|
|
1943
|
+
}
|
|
1944
|
+
}).timeout(attemptTimeout);
|
|
1945
|
+
});
|
|
1946
|
+
|
|
1947
|
+
describe('#createInterface - errors', () => {
|
|
1948
|
+
it('should have a createInterface function', (done) => {
|
|
1949
|
+
try {
|
|
1950
|
+
assert.equal(true, typeof a.createInterface === 'function');
|
|
1951
|
+
done();
|
|
1952
|
+
} catch (error) {
|
|
1953
|
+
log.error(`Test Failure: ${error}`);
|
|
1954
|
+
done(error);
|
|
1955
|
+
}
|
|
1956
|
+
}).timeout(attemptTimeout);
|
|
1957
|
+
it('should error if - missing deviceId', (done) => {
|
|
1958
|
+
try {
|
|
1959
|
+
a.createInterface(null, null, (data, error) => {
|
|
1960
|
+
try {
|
|
1961
|
+
const displayE = 'deviceId is required';
|
|
1962
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createInterface', displayE);
|
|
1963
|
+
done();
|
|
1964
|
+
} catch (err) {
|
|
1965
|
+
log.error(`Test Failure: ${err}`);
|
|
1966
|
+
done(err);
|
|
1967
|
+
}
|
|
1968
|
+
});
|
|
1969
|
+
} catch (error) {
|
|
1970
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1971
|
+
done(error);
|
|
1972
|
+
}
|
|
1973
|
+
}).timeout(attemptTimeout);
|
|
1974
|
+
it('should error if - missing body', (done) => {
|
|
1975
|
+
try {
|
|
1976
|
+
a.createInterface('fakeparam', null, (data, error) => {
|
|
1977
|
+
try {
|
|
1978
|
+
const displayE = 'body is required';
|
|
1979
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createInterface', displayE);
|
|
1980
|
+
done();
|
|
1981
|
+
} catch (err) {
|
|
1982
|
+
log.error(`Test Failure: ${err}`);
|
|
1983
|
+
done(err);
|
|
1984
|
+
}
|
|
1985
|
+
});
|
|
1986
|
+
} catch (error) {
|
|
1987
|
+
log.error(`Adapter Exception: ${error}`);
|
|
1988
|
+
done(error);
|
|
1989
|
+
}
|
|
1990
|
+
}).timeout(attemptTimeout);
|
|
1991
|
+
});
|
|
1992
|
+
|
|
1993
|
+
describe('#findDeviceLabels - errors', () => {
|
|
1994
|
+
it('should have a findDeviceLabels function', (done) => {
|
|
1995
|
+
try {
|
|
1996
|
+
assert.equal(true, typeof a.findDeviceLabels === 'function');
|
|
1997
|
+
done();
|
|
1998
|
+
} catch (error) {
|
|
1999
|
+
log.error(`Test Failure: ${error}`);
|
|
2000
|
+
done(error);
|
|
2001
|
+
}
|
|
2002
|
+
}).timeout(attemptTimeout);
|
|
2003
|
+
});
|
|
2004
|
+
|
|
2005
|
+
describe('#createDeviceLabel - errors', () => {
|
|
2006
|
+
it('should have a createDeviceLabel function', (done) => {
|
|
2007
|
+
try {
|
|
2008
|
+
assert.equal(true, typeof a.createDeviceLabel === 'function');
|
|
2009
|
+
done();
|
|
2010
|
+
} catch (error) {
|
|
2011
|
+
log.error(`Test Failure: ${error}`);
|
|
2012
|
+
done(error);
|
|
2013
|
+
}
|
|
2014
|
+
}).timeout(attemptTimeout);
|
|
2015
|
+
it('should error if - missing body', (done) => {
|
|
2016
|
+
try {
|
|
2017
|
+
a.createDeviceLabel(null, (data, error) => {
|
|
2018
|
+
try {
|
|
2019
|
+
const displayE = 'body is required';
|
|
2020
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createDeviceLabel', displayE);
|
|
2021
|
+
done();
|
|
2022
|
+
} catch (err) {
|
|
2023
|
+
log.error(`Test Failure: ${err}`);
|
|
2024
|
+
done(err);
|
|
2025
|
+
}
|
|
2026
|
+
});
|
|
2027
|
+
} catch (error) {
|
|
2028
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2029
|
+
done(error);
|
|
2030
|
+
}
|
|
2031
|
+
}).timeout(attemptTimeout);
|
|
2032
|
+
});
|
|
2033
|
+
|
|
2034
|
+
describe('#findDeviceLabel - errors', () => {
|
|
2035
|
+
it('should have a findDeviceLabel function', (done) => {
|
|
2036
|
+
try {
|
|
2037
|
+
assert.equal(true, typeof a.findDeviceLabel === 'function');
|
|
2038
|
+
done();
|
|
2039
|
+
} catch (error) {
|
|
2040
|
+
log.error(`Test Failure: ${error}`);
|
|
2041
|
+
done(error);
|
|
2042
|
+
}
|
|
2043
|
+
}).timeout(attemptTimeout);
|
|
2044
|
+
it('should error if - missing deviceLabelId', (done) => {
|
|
2045
|
+
try {
|
|
2046
|
+
a.findDeviceLabel(null, (data, error) => {
|
|
2047
|
+
try {
|
|
2048
|
+
const displayE = 'deviceLabelId is required';
|
|
2049
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-findDeviceLabel', displayE);
|
|
2050
|
+
done();
|
|
2051
|
+
} catch (err) {
|
|
2052
|
+
log.error(`Test Failure: ${err}`);
|
|
2053
|
+
done(err);
|
|
2054
|
+
}
|
|
2055
|
+
});
|
|
2056
|
+
} catch (error) {
|
|
2057
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2058
|
+
done(error);
|
|
2059
|
+
}
|
|
2060
|
+
}).timeout(attemptTimeout);
|
|
2061
|
+
});
|
|
2062
|
+
|
|
2063
|
+
describe('#updateDeviceLabel - errors', () => {
|
|
2064
|
+
it('should have a updateDeviceLabel function', (done) => {
|
|
2065
|
+
try {
|
|
2066
|
+
assert.equal(true, typeof a.updateDeviceLabel === 'function');
|
|
2067
|
+
done();
|
|
2068
|
+
} catch (error) {
|
|
2069
|
+
log.error(`Test Failure: ${error}`);
|
|
2070
|
+
done(error);
|
|
2071
|
+
}
|
|
2072
|
+
}).timeout(attemptTimeout);
|
|
2073
|
+
it('should error if - missing deviceLabelId', (done) => {
|
|
2074
|
+
try {
|
|
2075
|
+
a.updateDeviceLabel(null, null, (data, error) => {
|
|
2076
|
+
try {
|
|
2077
|
+
const displayE = 'deviceLabelId is required';
|
|
2078
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateDeviceLabel', displayE);
|
|
2079
|
+
done();
|
|
2080
|
+
} catch (err) {
|
|
2081
|
+
log.error(`Test Failure: ${err}`);
|
|
2082
|
+
done(err);
|
|
2083
|
+
}
|
|
2084
|
+
});
|
|
2085
|
+
} catch (error) {
|
|
2086
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2087
|
+
done(error);
|
|
2088
|
+
}
|
|
2089
|
+
}).timeout(attemptTimeout);
|
|
2090
|
+
it('should error if - missing body', (done) => {
|
|
2091
|
+
try {
|
|
2092
|
+
a.updateDeviceLabel('fakeparam', null, (data, error) => {
|
|
2093
|
+
try {
|
|
2094
|
+
const displayE = 'body is required';
|
|
2095
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateDeviceLabel', displayE);
|
|
2096
|
+
done();
|
|
2097
|
+
} catch (err) {
|
|
2098
|
+
log.error(`Test Failure: ${err}`);
|
|
2099
|
+
done(err);
|
|
2100
|
+
}
|
|
2101
|
+
});
|
|
2102
|
+
} catch (error) {
|
|
2103
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2104
|
+
done(error);
|
|
2105
|
+
}
|
|
2106
|
+
}).timeout(attemptTimeout);
|
|
2107
|
+
});
|
|
2108
|
+
|
|
2109
|
+
describe('#deleteDeviceLabel - errors', () => {
|
|
2110
|
+
it('should have a deleteDeviceLabel function', (done) => {
|
|
2111
|
+
try {
|
|
2112
|
+
assert.equal(true, typeof a.deleteDeviceLabel === 'function');
|
|
2113
|
+
done();
|
|
2114
|
+
} catch (error) {
|
|
2115
|
+
log.error(`Test Failure: ${error}`);
|
|
2116
|
+
done(error);
|
|
2117
|
+
}
|
|
2118
|
+
}).timeout(attemptTimeout);
|
|
2119
|
+
it('should error if - missing deviceLabelId', (done) => {
|
|
2120
|
+
try {
|
|
2121
|
+
a.deleteDeviceLabel(null, (data, error) => {
|
|
2122
|
+
try {
|
|
2123
|
+
const displayE = 'deviceLabelId is required';
|
|
2124
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deleteDeviceLabel', displayE);
|
|
2125
|
+
done();
|
|
2126
|
+
} catch (err) {
|
|
2127
|
+
log.error(`Test Failure: ${err}`);
|
|
2128
|
+
done(err);
|
|
2129
|
+
}
|
|
2130
|
+
});
|
|
2131
|
+
} catch (error) {
|
|
2132
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2133
|
+
done(error);
|
|
2134
|
+
}
|
|
2135
|
+
}).timeout(attemptTimeout);
|
|
2136
|
+
});
|
|
2137
|
+
|
|
2138
|
+
describe('#findPlans - errors', () => {
|
|
2139
|
+
it('should have a findPlans function', (done) => {
|
|
2140
|
+
try {
|
|
2141
|
+
assert.equal(true, typeof a.findPlans === 'function');
|
|
2142
|
+
done();
|
|
2143
|
+
} catch (error) {
|
|
2144
|
+
log.error(`Test Failure: ${error}`);
|
|
2145
|
+
done(error);
|
|
2146
|
+
}
|
|
2147
|
+
}).timeout(attemptTimeout);
|
|
2148
|
+
});
|
|
2149
|
+
|
|
2150
|
+
describe('#findSites - errors', () => {
|
|
2151
|
+
it('should have a findSites function', (done) => {
|
|
2152
|
+
try {
|
|
2153
|
+
assert.equal(true, typeof a.findSites === 'function');
|
|
2154
|
+
done();
|
|
2155
|
+
} catch (error) {
|
|
2156
|
+
log.error(`Test Failure: ${error}`);
|
|
2157
|
+
done(error);
|
|
2158
|
+
}
|
|
2159
|
+
}).timeout(attemptTimeout);
|
|
2160
|
+
});
|
|
2161
|
+
|
|
2162
|
+
describe('#findSite - errors', () => {
|
|
2163
|
+
it('should have a findSite function', (done) => {
|
|
2164
|
+
try {
|
|
2165
|
+
assert.equal(true, typeof a.findSite === 'function');
|
|
2166
|
+
done();
|
|
2167
|
+
} catch (error) {
|
|
2168
|
+
log.error(`Test Failure: ${error}`);
|
|
2169
|
+
done(error);
|
|
2170
|
+
}
|
|
2171
|
+
}).timeout(attemptTimeout);
|
|
2172
|
+
it('should error if - missing siteId', (done) => {
|
|
2173
|
+
try {
|
|
2174
|
+
a.findSite(null, (data, error) => {
|
|
2175
|
+
try {
|
|
2176
|
+
const displayE = 'siteId is required';
|
|
2177
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-findSite', displayE);
|
|
2178
|
+
done();
|
|
2179
|
+
} catch (err) {
|
|
2180
|
+
log.error(`Test Failure: ${err}`);
|
|
2181
|
+
done(err);
|
|
2182
|
+
}
|
|
2183
|
+
});
|
|
2184
|
+
} catch (error) {
|
|
2185
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2186
|
+
done(error);
|
|
2187
|
+
}
|
|
2188
|
+
}).timeout(attemptTimeout);
|
|
2189
|
+
});
|
|
2190
|
+
|
|
2191
|
+
describe('#updateSite - errors', () => {
|
|
2192
|
+
it('should have a updateSite function', (done) => {
|
|
2193
|
+
try {
|
|
2194
|
+
assert.equal(true, typeof a.updateSite === 'function');
|
|
2195
|
+
done();
|
|
2196
|
+
} catch (error) {
|
|
2197
|
+
log.error(`Test Failure: ${error}`);
|
|
2198
|
+
done(error);
|
|
2199
|
+
}
|
|
2200
|
+
}).timeout(attemptTimeout);
|
|
2201
|
+
it('should error if - missing siteId', (done) => {
|
|
2202
|
+
try {
|
|
2203
|
+
a.updateSite(null, null, (data, error) => {
|
|
2204
|
+
try {
|
|
2205
|
+
const displayE = 'siteId is required';
|
|
2206
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateSite', displayE);
|
|
2207
|
+
done();
|
|
2208
|
+
} catch (err) {
|
|
2209
|
+
log.error(`Test Failure: ${err}`);
|
|
2210
|
+
done(err);
|
|
2211
|
+
}
|
|
2212
|
+
});
|
|
2213
|
+
} catch (error) {
|
|
2214
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2215
|
+
done(error);
|
|
2216
|
+
}
|
|
2217
|
+
}).timeout(attemptTimeout);
|
|
2218
|
+
it('should error if - missing body', (done) => {
|
|
2219
|
+
try {
|
|
2220
|
+
a.updateSite('fakeparam', null, (data, error) => {
|
|
2221
|
+
try {
|
|
2222
|
+
const displayE = 'body is required';
|
|
2223
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateSite', displayE);
|
|
2224
|
+
done();
|
|
2225
|
+
} catch (err) {
|
|
2226
|
+
log.error(`Test Failure: ${err}`);
|
|
2227
|
+
done(err);
|
|
2228
|
+
}
|
|
2229
|
+
});
|
|
2230
|
+
} catch (error) {
|
|
2231
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2232
|
+
done(error);
|
|
2233
|
+
}
|
|
2234
|
+
}).timeout(attemptTimeout);
|
|
2235
|
+
});
|
|
2236
|
+
|
|
2237
|
+
describe('#deleteSite - errors', () => {
|
|
2238
|
+
it('should have a deleteSite function', (done) => {
|
|
2239
|
+
try {
|
|
2240
|
+
assert.equal(true, typeof a.deleteSite === 'function');
|
|
2241
|
+
done();
|
|
2242
|
+
} catch (error) {
|
|
2243
|
+
log.error(`Test Failure: ${error}`);
|
|
2244
|
+
done(error);
|
|
2245
|
+
}
|
|
2246
|
+
}).timeout(attemptTimeout);
|
|
2247
|
+
it('should error if - missing siteId', (done) => {
|
|
2248
|
+
try {
|
|
2249
|
+
a.deleteSite(null, (data, error) => {
|
|
2250
|
+
try {
|
|
2251
|
+
const displayE = 'siteId is required';
|
|
2252
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deleteSite', displayE);
|
|
2253
|
+
done();
|
|
2254
|
+
} catch (err) {
|
|
2255
|
+
log.error(`Test Failure: ${err}`);
|
|
2256
|
+
done(err);
|
|
2257
|
+
}
|
|
2258
|
+
});
|
|
2259
|
+
} catch (error) {
|
|
2260
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2261
|
+
done(error);
|
|
2262
|
+
}
|
|
2263
|
+
}).timeout(attemptTimeout);
|
|
2264
|
+
});
|
|
2265
|
+
|
|
2266
|
+
describe('#createSite - errors', () => {
|
|
2267
|
+
it('should have a createSite function', (done) => {
|
|
2268
|
+
try {
|
|
2269
|
+
assert.equal(true, typeof a.createSite === 'function');
|
|
2270
|
+
done();
|
|
2271
|
+
} catch (error) {
|
|
2272
|
+
log.error(`Test Failure: ${error}`);
|
|
2273
|
+
done(error);
|
|
2274
|
+
}
|
|
2275
|
+
}).timeout(attemptTimeout);
|
|
2276
|
+
it('should error if - missing body', (done) => {
|
|
2277
|
+
try {
|
|
2278
|
+
a.createSite(null, (data, error) => {
|
|
2279
|
+
try {
|
|
2280
|
+
const displayE = 'body is required';
|
|
2281
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createSite', displayE);
|
|
2282
|
+
done();
|
|
2283
|
+
} catch (err) {
|
|
2284
|
+
log.error(`Test Failure: ${err}`);
|
|
2285
|
+
done(err);
|
|
2286
|
+
}
|
|
2287
|
+
});
|
|
2288
|
+
} catch (error) {
|
|
2289
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2290
|
+
done(error);
|
|
2291
|
+
}
|
|
2292
|
+
}).timeout(attemptTimeout);
|
|
2293
|
+
});
|
|
2294
|
+
|
|
2295
|
+
describe('#findTags - errors', () => {
|
|
2296
|
+
it('should have a findTags function', (done) => {
|
|
2297
|
+
try {
|
|
2298
|
+
assert.equal(true, typeof a.findTags === 'function');
|
|
2299
|
+
done();
|
|
2300
|
+
} catch (error) {
|
|
2301
|
+
log.error(`Test Failure: ${error}`);
|
|
2302
|
+
done(error);
|
|
2303
|
+
}
|
|
2304
|
+
}).timeout(attemptTimeout);
|
|
2305
|
+
});
|
|
2306
|
+
|
|
2307
|
+
describe('#findTag - errors', () => {
|
|
2308
|
+
it('should have a findTag function', (done) => {
|
|
2309
|
+
try {
|
|
2310
|
+
assert.equal(true, typeof a.findTag === 'function');
|
|
2311
|
+
done();
|
|
2312
|
+
} catch (error) {
|
|
2313
|
+
log.error(`Test Failure: ${error}`);
|
|
2314
|
+
done(error);
|
|
2315
|
+
}
|
|
2316
|
+
}).timeout(attemptTimeout);
|
|
2317
|
+
it('should error if - missing tagId', (done) => {
|
|
2318
|
+
try {
|
|
2319
|
+
a.findTag(null, (data, error) => {
|
|
2320
|
+
try {
|
|
2321
|
+
const displayE = 'tagId is required';
|
|
2322
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-findTag', displayE);
|
|
2323
|
+
done();
|
|
2324
|
+
} catch (err) {
|
|
2325
|
+
log.error(`Test Failure: ${err}`);
|
|
2326
|
+
done(err);
|
|
2327
|
+
}
|
|
2328
|
+
});
|
|
2329
|
+
} catch (error) {
|
|
2330
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2331
|
+
done(error);
|
|
2332
|
+
}
|
|
2333
|
+
}).timeout(attemptTimeout);
|
|
2334
|
+
});
|
|
2335
|
+
|
|
2336
|
+
describe('#updateTag - errors', () => {
|
|
2337
|
+
it('should have a updateTag function', (done) => {
|
|
2338
|
+
try {
|
|
2339
|
+
assert.equal(true, typeof a.updateTag === 'function');
|
|
2340
|
+
done();
|
|
2341
|
+
} catch (error) {
|
|
2342
|
+
log.error(`Test Failure: ${error}`);
|
|
2343
|
+
done(error);
|
|
2344
|
+
}
|
|
2345
|
+
}).timeout(attemptTimeout);
|
|
2346
|
+
it('should error if - missing tagId', (done) => {
|
|
2347
|
+
try {
|
|
2348
|
+
a.updateTag(null, null, (data, error) => {
|
|
2349
|
+
try {
|
|
2350
|
+
const displayE = 'tagId is required';
|
|
2351
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateTag', displayE);
|
|
2352
|
+
done();
|
|
2353
|
+
} catch (err) {
|
|
2354
|
+
log.error(`Test Failure: ${err}`);
|
|
2355
|
+
done(err);
|
|
2356
|
+
}
|
|
2357
|
+
});
|
|
2358
|
+
} catch (error) {
|
|
2359
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2360
|
+
done(error);
|
|
2361
|
+
}
|
|
2362
|
+
}).timeout(attemptTimeout);
|
|
2363
|
+
it('should error if - missing body', (done) => {
|
|
2364
|
+
try {
|
|
2365
|
+
a.updateTag('fakeparam', null, (data, error) => {
|
|
2366
|
+
try {
|
|
2367
|
+
const displayE = 'body is required';
|
|
2368
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateTag', displayE);
|
|
2369
|
+
done();
|
|
2370
|
+
} catch (err) {
|
|
2371
|
+
log.error(`Test Failure: ${err}`);
|
|
2372
|
+
done(err);
|
|
2373
|
+
}
|
|
2374
|
+
});
|
|
2375
|
+
} catch (error) {
|
|
2376
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2377
|
+
done(error);
|
|
2378
|
+
}
|
|
2379
|
+
}).timeout(attemptTimeout);
|
|
2380
|
+
});
|
|
2381
|
+
|
|
2382
|
+
describe('#deleteTag - errors', () => {
|
|
2383
|
+
it('should have a deleteTag function', (done) => {
|
|
2384
|
+
try {
|
|
2385
|
+
assert.equal(true, typeof a.deleteTag === 'function');
|
|
2386
|
+
done();
|
|
2387
|
+
} catch (error) {
|
|
2388
|
+
log.error(`Test Failure: ${error}`);
|
|
2389
|
+
done(error);
|
|
2390
|
+
}
|
|
2391
|
+
}).timeout(attemptTimeout);
|
|
2392
|
+
it('should error if - missing tagId', (done) => {
|
|
2393
|
+
try {
|
|
2394
|
+
a.deleteTag(null, (data, error) => {
|
|
2395
|
+
try {
|
|
2396
|
+
const displayE = 'tagId is required';
|
|
2397
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deleteTag', displayE);
|
|
2398
|
+
done();
|
|
2399
|
+
} catch (err) {
|
|
2400
|
+
log.error(`Test Failure: ${err}`);
|
|
2401
|
+
done(err);
|
|
2402
|
+
}
|
|
2403
|
+
});
|
|
2404
|
+
} catch (error) {
|
|
2405
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2406
|
+
done(error);
|
|
2407
|
+
}
|
|
2408
|
+
}).timeout(attemptTimeout);
|
|
2409
|
+
});
|
|
2410
|
+
|
|
2411
|
+
describe('#createTag - errors', () => {
|
|
2412
|
+
it('should have a createTag function', (done) => {
|
|
2413
|
+
try {
|
|
2414
|
+
assert.equal(true, typeof a.createTag === 'function');
|
|
2415
|
+
done();
|
|
2416
|
+
} catch (error) {
|
|
2417
|
+
log.error(`Test Failure: ${error}`);
|
|
2418
|
+
done(error);
|
|
2419
|
+
}
|
|
2420
|
+
}).timeout(attemptTimeout);
|
|
2421
|
+
it('should error if - missing body', (done) => {
|
|
2422
|
+
try {
|
|
2423
|
+
a.createTag(null, (data, error) => {
|
|
2424
|
+
try {
|
|
2425
|
+
const displayE = 'body is required';
|
|
2426
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createTag', displayE);
|
|
2427
|
+
done();
|
|
2428
|
+
} catch (err) {
|
|
2429
|
+
log.error(`Test Failure: ${err}`);
|
|
2430
|
+
done(err);
|
|
2431
|
+
}
|
|
2432
|
+
});
|
|
2433
|
+
} catch (error) {
|
|
2434
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2435
|
+
done(error);
|
|
2436
|
+
}
|
|
2437
|
+
}).timeout(attemptTimeout);
|
|
2438
|
+
});
|
|
2439
|
+
|
|
2440
|
+
describe('#findCustomDimensions - errors', () => {
|
|
2441
|
+
it('should have a findCustomDimensions function', (done) => {
|
|
2442
|
+
try {
|
|
2443
|
+
assert.equal(true, typeof a.findCustomDimensions === 'function');
|
|
2444
|
+
done();
|
|
2445
|
+
} catch (error) {
|
|
2446
|
+
log.error(`Test Failure: ${error}`);
|
|
2447
|
+
done(error);
|
|
2448
|
+
}
|
|
2449
|
+
}).timeout(attemptTimeout);
|
|
2450
|
+
});
|
|
2451
|
+
|
|
2452
|
+
describe('#findCustomDimension - errors', () => {
|
|
2453
|
+
it('should have a findCustomDimension function', (done) => {
|
|
2454
|
+
try {
|
|
2455
|
+
assert.equal(true, typeof a.findCustomDimension === 'function');
|
|
2456
|
+
done();
|
|
2457
|
+
} catch (error) {
|
|
2458
|
+
log.error(`Test Failure: ${error}`);
|
|
2459
|
+
done(error);
|
|
2460
|
+
}
|
|
2461
|
+
}).timeout(attemptTimeout);
|
|
2462
|
+
it('should error if - missing dimensionId', (done) => {
|
|
2463
|
+
try {
|
|
2464
|
+
a.findCustomDimension(null, (data, error) => {
|
|
2465
|
+
try {
|
|
2466
|
+
const displayE = 'dimensionId is required';
|
|
2467
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-findCustomDimension', displayE);
|
|
2468
|
+
done();
|
|
2469
|
+
} catch (err) {
|
|
2470
|
+
log.error(`Test Failure: ${err}`);
|
|
2471
|
+
done(err);
|
|
2472
|
+
}
|
|
2473
|
+
});
|
|
2474
|
+
} catch (error) {
|
|
2475
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2476
|
+
done(error);
|
|
2477
|
+
}
|
|
2478
|
+
}).timeout(attemptTimeout);
|
|
2479
|
+
});
|
|
2480
|
+
|
|
2481
|
+
describe('#updateCustomDimension - errors', () => {
|
|
2482
|
+
it('should have a updateCustomDimension function', (done) => {
|
|
2483
|
+
try {
|
|
2484
|
+
assert.equal(true, typeof a.updateCustomDimension === 'function');
|
|
2485
|
+
done();
|
|
2486
|
+
} catch (error) {
|
|
2487
|
+
log.error(`Test Failure: ${error}`);
|
|
2488
|
+
done(error);
|
|
2489
|
+
}
|
|
2490
|
+
}).timeout(attemptTimeout);
|
|
2491
|
+
it('should error if - missing dimensionId', (done) => {
|
|
2492
|
+
try {
|
|
2493
|
+
a.updateCustomDimension(null, null, (data, error) => {
|
|
2494
|
+
try {
|
|
2495
|
+
const displayE = 'dimensionId is required';
|
|
2496
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateCustomDimension', displayE);
|
|
2497
|
+
done();
|
|
2498
|
+
} catch (err) {
|
|
2499
|
+
log.error(`Test Failure: ${err}`);
|
|
2500
|
+
done(err);
|
|
2501
|
+
}
|
|
2502
|
+
});
|
|
2503
|
+
} catch (error) {
|
|
2504
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2505
|
+
done(error);
|
|
2506
|
+
}
|
|
2507
|
+
}).timeout(attemptTimeout);
|
|
2508
|
+
it('should error if - missing body', (done) => {
|
|
2509
|
+
try {
|
|
2510
|
+
a.updateCustomDimension('fakeparam', null, (data, error) => {
|
|
2511
|
+
try {
|
|
2512
|
+
const displayE = 'body is required';
|
|
2513
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateCustomDimension', displayE);
|
|
2514
|
+
done();
|
|
2515
|
+
} catch (err) {
|
|
2516
|
+
log.error(`Test Failure: ${err}`);
|
|
2517
|
+
done(err);
|
|
2518
|
+
}
|
|
2519
|
+
});
|
|
2520
|
+
} catch (error) {
|
|
2521
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2522
|
+
done(error);
|
|
2523
|
+
}
|
|
2524
|
+
}).timeout(attemptTimeout);
|
|
2525
|
+
});
|
|
2526
|
+
|
|
2527
|
+
describe('#deleteCustomDimension - errors', () => {
|
|
2528
|
+
it('should have a deleteCustomDimension function', (done) => {
|
|
2529
|
+
try {
|
|
2530
|
+
assert.equal(true, typeof a.deleteCustomDimension === 'function');
|
|
2531
|
+
done();
|
|
2532
|
+
} catch (error) {
|
|
2533
|
+
log.error(`Test Failure: ${error}`);
|
|
2534
|
+
done(error);
|
|
2535
|
+
}
|
|
2536
|
+
}).timeout(attemptTimeout);
|
|
2537
|
+
it('should error if - missing dimensionId', (done) => {
|
|
2538
|
+
try {
|
|
2539
|
+
a.deleteCustomDimension(null, (data, error) => {
|
|
2540
|
+
try {
|
|
2541
|
+
const displayE = 'dimensionId is required';
|
|
2542
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deleteCustomDimension', displayE);
|
|
2543
|
+
done();
|
|
2544
|
+
} catch (err) {
|
|
2545
|
+
log.error(`Test Failure: ${err}`);
|
|
2546
|
+
done(err);
|
|
2547
|
+
}
|
|
2548
|
+
});
|
|
2549
|
+
} catch (error) {
|
|
2550
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2551
|
+
done(error);
|
|
2552
|
+
}
|
|
2553
|
+
}).timeout(attemptTimeout);
|
|
2554
|
+
});
|
|
2555
|
+
|
|
2556
|
+
describe('#createCustomDimension - errors', () => {
|
|
2557
|
+
it('should have a createCustomDimension function', (done) => {
|
|
2558
|
+
try {
|
|
2559
|
+
assert.equal(true, typeof a.createCustomDimension === 'function');
|
|
2560
|
+
done();
|
|
2561
|
+
} catch (error) {
|
|
2562
|
+
log.error(`Test Failure: ${error}`);
|
|
2563
|
+
done(error);
|
|
2564
|
+
}
|
|
2565
|
+
}).timeout(attemptTimeout);
|
|
2566
|
+
it('should error if - missing body', (done) => {
|
|
2567
|
+
try {
|
|
2568
|
+
a.createCustomDimension(null, (data, error) => {
|
|
2569
|
+
try {
|
|
2570
|
+
const displayE = 'body is required';
|
|
2571
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createCustomDimension', displayE);
|
|
2572
|
+
done();
|
|
2573
|
+
} catch (err) {
|
|
2574
|
+
log.error(`Test Failure: ${err}`);
|
|
2575
|
+
done(err);
|
|
2576
|
+
}
|
|
2577
|
+
});
|
|
2578
|
+
} catch (error) {
|
|
2579
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2580
|
+
done(error);
|
|
2581
|
+
}
|
|
2582
|
+
}).timeout(attemptTimeout);
|
|
2583
|
+
});
|
|
2584
|
+
|
|
2585
|
+
describe('#createPopulator - errors', () => {
|
|
2586
|
+
it('should have a createPopulator function', (done) => {
|
|
2587
|
+
try {
|
|
2588
|
+
assert.equal(true, typeof a.createPopulator === 'function');
|
|
2589
|
+
done();
|
|
2590
|
+
} catch (error) {
|
|
2591
|
+
log.error(`Test Failure: ${error}`);
|
|
2592
|
+
done(error);
|
|
2593
|
+
}
|
|
2594
|
+
}).timeout(attemptTimeout);
|
|
2595
|
+
it('should error if - missing dimensionId', (done) => {
|
|
2596
|
+
try {
|
|
2597
|
+
a.createPopulator(null, null, (data, error) => {
|
|
2598
|
+
try {
|
|
2599
|
+
const displayE = 'dimensionId is required';
|
|
2600
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createPopulator', displayE);
|
|
2601
|
+
done();
|
|
2602
|
+
} catch (err) {
|
|
2603
|
+
log.error(`Test Failure: ${err}`);
|
|
2604
|
+
done(err);
|
|
2605
|
+
}
|
|
2606
|
+
});
|
|
2607
|
+
} catch (error) {
|
|
2608
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2609
|
+
done(error);
|
|
2610
|
+
}
|
|
2611
|
+
}).timeout(attemptTimeout);
|
|
2612
|
+
it('should error if - missing body', (done) => {
|
|
2613
|
+
try {
|
|
2614
|
+
a.createPopulator('fakeparam', null, (data, error) => {
|
|
2615
|
+
try {
|
|
2616
|
+
const displayE = 'body is required';
|
|
2617
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createPopulator', displayE);
|
|
2618
|
+
done();
|
|
2619
|
+
} catch (err) {
|
|
2620
|
+
log.error(`Test Failure: ${err}`);
|
|
2621
|
+
done(err);
|
|
2622
|
+
}
|
|
2623
|
+
});
|
|
2624
|
+
} catch (error) {
|
|
2625
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2626
|
+
done(error);
|
|
2627
|
+
}
|
|
2628
|
+
}).timeout(attemptTimeout);
|
|
2629
|
+
});
|
|
2630
|
+
|
|
2631
|
+
describe('#updatePopulator - errors', () => {
|
|
2632
|
+
it('should have a updatePopulator function', (done) => {
|
|
2633
|
+
try {
|
|
2634
|
+
assert.equal(true, typeof a.updatePopulator === 'function');
|
|
2635
|
+
done();
|
|
2636
|
+
} catch (error) {
|
|
2637
|
+
log.error(`Test Failure: ${error}`);
|
|
2638
|
+
done(error);
|
|
2639
|
+
}
|
|
2640
|
+
}).timeout(attemptTimeout);
|
|
2641
|
+
it('should error if - missing populatorId', (done) => {
|
|
2642
|
+
try {
|
|
2643
|
+
a.updatePopulator(null, null, null, (data, error) => {
|
|
2644
|
+
try {
|
|
2645
|
+
const displayE = 'populatorId is required';
|
|
2646
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updatePopulator', displayE);
|
|
2647
|
+
done();
|
|
2648
|
+
} catch (err) {
|
|
2649
|
+
log.error(`Test Failure: ${err}`);
|
|
2650
|
+
done(err);
|
|
2651
|
+
}
|
|
2652
|
+
});
|
|
2653
|
+
} catch (error) {
|
|
2654
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2655
|
+
done(error);
|
|
2656
|
+
}
|
|
2657
|
+
}).timeout(attemptTimeout);
|
|
2658
|
+
it('should error if - missing dimensionId', (done) => {
|
|
2659
|
+
try {
|
|
2660
|
+
a.updatePopulator('fakeparam', null, null, (data, error) => {
|
|
2661
|
+
try {
|
|
2662
|
+
const displayE = 'dimensionId is required';
|
|
2663
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updatePopulator', displayE);
|
|
2664
|
+
done();
|
|
2665
|
+
} catch (err) {
|
|
2666
|
+
log.error(`Test Failure: ${err}`);
|
|
2667
|
+
done(err);
|
|
2668
|
+
}
|
|
2669
|
+
});
|
|
2670
|
+
} catch (error) {
|
|
2671
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2672
|
+
done(error);
|
|
2673
|
+
}
|
|
2674
|
+
}).timeout(attemptTimeout);
|
|
2675
|
+
it('should error if - missing body', (done) => {
|
|
2676
|
+
try {
|
|
2677
|
+
a.updatePopulator('fakeparam', 'fakeparam', null, (data, error) => {
|
|
2678
|
+
try {
|
|
2679
|
+
const displayE = 'body is required';
|
|
2680
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updatePopulator', displayE);
|
|
2681
|
+
done();
|
|
2682
|
+
} catch (err) {
|
|
2683
|
+
log.error(`Test Failure: ${err}`);
|
|
2684
|
+
done(err);
|
|
2685
|
+
}
|
|
2686
|
+
});
|
|
2687
|
+
} catch (error) {
|
|
2688
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2689
|
+
done(error);
|
|
2690
|
+
}
|
|
2691
|
+
}).timeout(attemptTimeout);
|
|
2692
|
+
});
|
|
2693
|
+
|
|
2694
|
+
describe('#deletePopulator - errors', () => {
|
|
2695
|
+
it('should have a deletePopulator function', (done) => {
|
|
2696
|
+
try {
|
|
2697
|
+
assert.equal(true, typeof a.deletePopulator === 'function');
|
|
2698
|
+
done();
|
|
2699
|
+
} catch (error) {
|
|
2700
|
+
log.error(`Test Failure: ${error}`);
|
|
2701
|
+
done(error);
|
|
2702
|
+
}
|
|
2703
|
+
}).timeout(attemptTimeout);
|
|
2704
|
+
it('should error if - missing populatorId', (done) => {
|
|
2705
|
+
try {
|
|
2706
|
+
a.deletePopulator(null, null, (data, error) => {
|
|
2707
|
+
try {
|
|
2708
|
+
const displayE = 'populatorId is required';
|
|
2709
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deletePopulator', displayE);
|
|
2710
|
+
done();
|
|
2711
|
+
} catch (err) {
|
|
2712
|
+
log.error(`Test Failure: ${err}`);
|
|
2713
|
+
done(err);
|
|
2714
|
+
}
|
|
2715
|
+
});
|
|
2716
|
+
} catch (error) {
|
|
2717
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2718
|
+
done(error);
|
|
2719
|
+
}
|
|
2720
|
+
}).timeout(attemptTimeout);
|
|
2721
|
+
it('should error if - missing dimensionId', (done) => {
|
|
2722
|
+
try {
|
|
2723
|
+
a.deletePopulator('fakeparam', null, (data, error) => {
|
|
2724
|
+
try {
|
|
2725
|
+
const displayE = 'dimensionId is required';
|
|
2726
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deletePopulator', displayE);
|
|
2727
|
+
done();
|
|
2728
|
+
} catch (err) {
|
|
2729
|
+
log.error(`Test Failure: ${err}`);
|
|
2730
|
+
done(err);
|
|
2731
|
+
}
|
|
2732
|
+
});
|
|
2733
|
+
} catch (error) {
|
|
2734
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2735
|
+
done(error);
|
|
2736
|
+
}
|
|
2737
|
+
}).timeout(attemptTimeout);
|
|
2738
|
+
});
|
|
2739
|
+
|
|
2740
|
+
describe('#findCustomApplications - errors', () => {
|
|
2741
|
+
it('should have a findCustomApplications function', (done) => {
|
|
2742
|
+
try {
|
|
2743
|
+
assert.equal(true, typeof a.findCustomApplications === 'function');
|
|
2744
|
+
done();
|
|
2745
|
+
} catch (error) {
|
|
2746
|
+
log.error(`Test Failure: ${error}`);
|
|
2747
|
+
done(error);
|
|
2748
|
+
}
|
|
2749
|
+
}).timeout(attemptTimeout);
|
|
2750
|
+
});
|
|
2751
|
+
|
|
2752
|
+
describe('#createCustomApplication - errors', () => {
|
|
2753
|
+
it('should have a createCustomApplication function', (done) => {
|
|
2754
|
+
try {
|
|
2755
|
+
assert.equal(true, typeof a.createCustomApplication === 'function');
|
|
2756
|
+
done();
|
|
2757
|
+
} catch (error) {
|
|
2758
|
+
log.error(`Test Failure: ${error}`);
|
|
2759
|
+
done(error);
|
|
2760
|
+
}
|
|
2761
|
+
}).timeout(attemptTimeout);
|
|
2762
|
+
it('should error if - missing body', (done) => {
|
|
2763
|
+
try {
|
|
2764
|
+
a.createCustomApplication(null, (data, error) => {
|
|
2765
|
+
try {
|
|
2766
|
+
const displayE = 'body is required';
|
|
2767
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createCustomApplication', displayE);
|
|
2768
|
+
done();
|
|
2769
|
+
} catch (err) {
|
|
2770
|
+
log.error(`Test Failure: ${err}`);
|
|
2771
|
+
done(err);
|
|
2772
|
+
}
|
|
2773
|
+
});
|
|
2774
|
+
} catch (error) {
|
|
2775
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2776
|
+
done(error);
|
|
2777
|
+
}
|
|
2778
|
+
}).timeout(attemptTimeout);
|
|
2779
|
+
});
|
|
2780
|
+
|
|
2781
|
+
describe('#updateCustomApplication - errors', () => {
|
|
2782
|
+
it('should have a updateCustomApplication function', (done) => {
|
|
2783
|
+
try {
|
|
2784
|
+
assert.equal(true, typeof a.updateCustomApplication === 'function');
|
|
2785
|
+
done();
|
|
2786
|
+
} catch (error) {
|
|
2787
|
+
log.error(`Test Failure: ${error}`);
|
|
2788
|
+
done(error);
|
|
2789
|
+
}
|
|
2790
|
+
}).timeout(attemptTimeout);
|
|
2791
|
+
it('should error if - missing applicationId', (done) => {
|
|
2792
|
+
try {
|
|
2793
|
+
a.updateCustomApplication(null, null, (data, error) => {
|
|
2794
|
+
try {
|
|
2795
|
+
const displayE = 'applicationId is required';
|
|
2796
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateCustomApplication', displayE);
|
|
2797
|
+
done();
|
|
2798
|
+
} catch (err) {
|
|
2799
|
+
log.error(`Test Failure: ${err}`);
|
|
2800
|
+
done(err);
|
|
2801
|
+
}
|
|
2802
|
+
});
|
|
2803
|
+
} catch (error) {
|
|
2804
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2805
|
+
done(error);
|
|
2806
|
+
}
|
|
2807
|
+
}).timeout(attemptTimeout);
|
|
2808
|
+
it('should error if - missing body', (done) => {
|
|
2809
|
+
try {
|
|
2810
|
+
a.updateCustomApplication('fakeparam', null, (data, error) => {
|
|
2811
|
+
try {
|
|
2812
|
+
const displayE = 'body is required';
|
|
2813
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateCustomApplication', displayE);
|
|
2814
|
+
done();
|
|
2815
|
+
} catch (err) {
|
|
2816
|
+
log.error(`Test Failure: ${err}`);
|
|
2817
|
+
done(err);
|
|
2818
|
+
}
|
|
2819
|
+
});
|
|
2820
|
+
} catch (error) {
|
|
2821
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2822
|
+
done(error);
|
|
2823
|
+
}
|
|
2824
|
+
}).timeout(attemptTimeout);
|
|
2825
|
+
});
|
|
2826
|
+
|
|
2827
|
+
describe('#deleteCustomApplication - errors', () => {
|
|
2828
|
+
it('should have a deleteCustomApplication function', (done) => {
|
|
2829
|
+
try {
|
|
2830
|
+
assert.equal(true, typeof a.deleteCustomApplication === 'function');
|
|
2831
|
+
done();
|
|
2832
|
+
} catch (error) {
|
|
2833
|
+
log.error(`Test Failure: ${error}`);
|
|
2834
|
+
done(error);
|
|
2835
|
+
}
|
|
2836
|
+
}).timeout(attemptTimeout);
|
|
2837
|
+
it('should error if - missing applicationId', (done) => {
|
|
2838
|
+
try {
|
|
2839
|
+
a.deleteCustomApplication(null, (data, error) => {
|
|
2840
|
+
try {
|
|
2841
|
+
const displayE = 'applicationId is required';
|
|
2842
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deleteCustomApplication', displayE);
|
|
2843
|
+
done();
|
|
2844
|
+
} catch (err) {
|
|
2845
|
+
log.error(`Test Failure: ${err}`);
|
|
2846
|
+
done(err);
|
|
2847
|
+
}
|
|
2848
|
+
});
|
|
2849
|
+
} catch (error) {
|
|
2850
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2851
|
+
done(error);
|
|
2852
|
+
}
|
|
2853
|
+
}).timeout(attemptTimeout);
|
|
2854
|
+
});
|
|
2855
|
+
|
|
2856
|
+
describe('#findSavedFilters - errors', () => {
|
|
2857
|
+
it('should have a findSavedFilters function', (done) => {
|
|
2858
|
+
try {
|
|
2859
|
+
assert.equal(true, typeof a.findSavedFilters === 'function');
|
|
2860
|
+
done();
|
|
2861
|
+
} catch (error) {
|
|
2862
|
+
log.error(`Test Failure: ${error}`);
|
|
2863
|
+
done(error);
|
|
2864
|
+
}
|
|
2865
|
+
}).timeout(attemptTimeout);
|
|
2866
|
+
});
|
|
2867
|
+
|
|
2868
|
+
describe('#findSavedFilter - errors', () => {
|
|
2869
|
+
it('should have a findSavedFilter function', (done) => {
|
|
2870
|
+
try {
|
|
2871
|
+
assert.equal(true, typeof a.findSavedFilter === 'function');
|
|
2872
|
+
done();
|
|
2873
|
+
} catch (error) {
|
|
2874
|
+
log.error(`Test Failure: ${error}`);
|
|
2875
|
+
done(error);
|
|
2876
|
+
}
|
|
2877
|
+
}).timeout(attemptTimeout);
|
|
2878
|
+
it('should error if - missing savedfilterId', (done) => {
|
|
2879
|
+
try {
|
|
2880
|
+
a.findSavedFilter(null, (data, error) => {
|
|
2881
|
+
try {
|
|
2882
|
+
const displayE = 'savedfilterId is required';
|
|
2883
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-findSavedFilter', displayE);
|
|
2884
|
+
done();
|
|
2885
|
+
} catch (err) {
|
|
2886
|
+
log.error(`Test Failure: ${err}`);
|
|
2887
|
+
done(err);
|
|
2888
|
+
}
|
|
2889
|
+
});
|
|
2890
|
+
} catch (error) {
|
|
2891
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2892
|
+
done(error);
|
|
2893
|
+
}
|
|
2894
|
+
}).timeout(attemptTimeout);
|
|
2895
|
+
});
|
|
2896
|
+
|
|
2897
|
+
describe('#updateSavedFilter - errors', () => {
|
|
2898
|
+
it('should have a updateSavedFilter function', (done) => {
|
|
2899
|
+
try {
|
|
2900
|
+
assert.equal(true, typeof a.updateSavedFilter === 'function');
|
|
2901
|
+
done();
|
|
2902
|
+
} catch (error) {
|
|
2903
|
+
log.error(`Test Failure: ${error}`);
|
|
2904
|
+
done(error);
|
|
2905
|
+
}
|
|
2906
|
+
}).timeout(attemptTimeout);
|
|
2907
|
+
it('should error if - missing savedfilterId', (done) => {
|
|
2908
|
+
try {
|
|
2909
|
+
a.updateSavedFilter(null, null, (data, error) => {
|
|
2910
|
+
try {
|
|
2911
|
+
const displayE = 'savedfilterId is required';
|
|
2912
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateSavedFilter', displayE);
|
|
2913
|
+
done();
|
|
2914
|
+
} catch (err) {
|
|
2915
|
+
log.error(`Test Failure: ${err}`);
|
|
2916
|
+
done(err);
|
|
2917
|
+
}
|
|
2918
|
+
});
|
|
2919
|
+
} catch (error) {
|
|
2920
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2921
|
+
done(error);
|
|
2922
|
+
}
|
|
2923
|
+
}).timeout(attemptTimeout);
|
|
2924
|
+
it('should error if - missing body', (done) => {
|
|
2925
|
+
try {
|
|
2926
|
+
a.updateSavedFilter('fakeparam', null, (data, error) => {
|
|
2927
|
+
try {
|
|
2928
|
+
const displayE = 'body is required';
|
|
2929
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-updateSavedFilter', displayE);
|
|
2930
|
+
done();
|
|
2931
|
+
} catch (err) {
|
|
2932
|
+
log.error(`Test Failure: ${err}`);
|
|
2933
|
+
done(err);
|
|
2934
|
+
}
|
|
2935
|
+
});
|
|
2936
|
+
} catch (error) {
|
|
2937
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2938
|
+
done(error);
|
|
2939
|
+
}
|
|
2940
|
+
}).timeout(attemptTimeout);
|
|
2941
|
+
});
|
|
2942
|
+
|
|
2943
|
+
describe('#deleteSavedFilter - errors', () => {
|
|
2944
|
+
it('should have a deleteSavedFilter function', (done) => {
|
|
2945
|
+
try {
|
|
2946
|
+
assert.equal(true, typeof a.deleteSavedFilter === 'function');
|
|
2947
|
+
done();
|
|
2948
|
+
} catch (error) {
|
|
2949
|
+
log.error(`Test Failure: ${error}`);
|
|
2950
|
+
done(error);
|
|
2951
|
+
}
|
|
2952
|
+
}).timeout(attemptTimeout);
|
|
2953
|
+
it('should error if - missing savedfilterId', (done) => {
|
|
2954
|
+
try {
|
|
2955
|
+
a.deleteSavedFilter(null, (data, error) => {
|
|
2956
|
+
try {
|
|
2957
|
+
const displayE = 'savedfilterId is required';
|
|
2958
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deleteSavedFilter', displayE);
|
|
2959
|
+
done();
|
|
2960
|
+
} catch (err) {
|
|
2961
|
+
log.error(`Test Failure: ${err}`);
|
|
2962
|
+
done(err);
|
|
2963
|
+
}
|
|
2964
|
+
});
|
|
2965
|
+
} catch (error) {
|
|
2966
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2967
|
+
done(error);
|
|
2968
|
+
}
|
|
2969
|
+
}).timeout(attemptTimeout);
|
|
2970
|
+
});
|
|
2971
|
+
|
|
2972
|
+
describe('#createSavedFilter - errors', () => {
|
|
2973
|
+
it('should have a createSavedFilter function', (done) => {
|
|
2974
|
+
try {
|
|
2975
|
+
assert.equal(true, typeof a.createSavedFilter === 'function');
|
|
2976
|
+
done();
|
|
2977
|
+
} catch (error) {
|
|
2978
|
+
log.error(`Test Failure: ${error}`);
|
|
2979
|
+
done(error);
|
|
2980
|
+
}
|
|
2981
|
+
}).timeout(attemptTimeout);
|
|
2982
|
+
it('should error if - missing body', (done) => {
|
|
2983
|
+
try {
|
|
2984
|
+
a.createSavedFilter(null, (data, error) => {
|
|
2985
|
+
try {
|
|
2986
|
+
const displayE = 'body is required';
|
|
2987
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createSavedFilter', displayE);
|
|
2988
|
+
done();
|
|
2989
|
+
} catch (err) {
|
|
2990
|
+
log.error(`Test Failure: ${err}`);
|
|
2991
|
+
done(err);
|
|
2992
|
+
}
|
|
2993
|
+
});
|
|
2994
|
+
} catch (error) {
|
|
2995
|
+
log.error(`Adapter Exception: ${error}`);
|
|
2996
|
+
done(error);
|
|
2997
|
+
}
|
|
2998
|
+
}).timeout(attemptTimeout);
|
|
2999
|
+
});
|
|
3000
|
+
|
|
3001
|
+
describe('#createManualMitigation - errors', () => {
|
|
3002
|
+
it('should have a createManualMitigation function', (done) => {
|
|
3003
|
+
try {
|
|
3004
|
+
assert.equal(true, typeof a.createManualMitigation === 'function');
|
|
3005
|
+
done();
|
|
3006
|
+
} catch (error) {
|
|
3007
|
+
log.error(`Test Failure: ${error}`);
|
|
3008
|
+
done(error);
|
|
3009
|
+
}
|
|
3010
|
+
}).timeout(attemptTimeout);
|
|
3011
|
+
it('should error if - missing body', (done) => {
|
|
3012
|
+
try {
|
|
3013
|
+
a.createManualMitigation(null, (data, error) => {
|
|
3014
|
+
try {
|
|
3015
|
+
const displayE = 'body is required';
|
|
3016
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createManualMitigation', displayE);
|
|
3017
|
+
done();
|
|
3018
|
+
} catch (err) {
|
|
3019
|
+
log.error(`Test Failure: ${err}`);
|
|
3020
|
+
done(err);
|
|
3021
|
+
}
|
|
3022
|
+
});
|
|
3023
|
+
} catch (error) {
|
|
3024
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3025
|
+
done(error);
|
|
3026
|
+
}
|
|
3027
|
+
}).timeout(attemptTimeout);
|
|
3028
|
+
});
|
|
3029
|
+
|
|
3030
|
+
describe('#alarms - errors', () => {
|
|
3031
|
+
it('should have a alarms function', (done) => {
|
|
3032
|
+
try {
|
|
3033
|
+
assert.equal(true, typeof a.alarms === 'function');
|
|
3034
|
+
done();
|
|
3035
|
+
} catch (error) {
|
|
3036
|
+
log.error(`Test Failure: ${error}`);
|
|
3037
|
+
done(error);
|
|
3038
|
+
}
|
|
3039
|
+
}).timeout(attemptTimeout);
|
|
3040
|
+
it('should error if - missing startTime', (done) => {
|
|
3041
|
+
try {
|
|
3042
|
+
a.alarms(null, null, null, null, null, null, null, null, (data, error) => {
|
|
3043
|
+
try {
|
|
3044
|
+
const displayE = 'startTime is required';
|
|
3045
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alarms', displayE);
|
|
3046
|
+
done();
|
|
3047
|
+
} catch (err) {
|
|
3048
|
+
log.error(`Test Failure: ${err}`);
|
|
3049
|
+
done(err);
|
|
3050
|
+
}
|
|
3051
|
+
});
|
|
3052
|
+
} catch (error) {
|
|
3053
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3054
|
+
done(error);
|
|
3055
|
+
}
|
|
3056
|
+
}).timeout(attemptTimeout);
|
|
3057
|
+
it('should error if - missing endTime', (done) => {
|
|
3058
|
+
try {
|
|
3059
|
+
a.alarms('fakeparam', null, null, null, null, null, null, null, (data, error) => {
|
|
3060
|
+
try {
|
|
3061
|
+
const displayE = 'endTime is required';
|
|
3062
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alarms', displayE);
|
|
3063
|
+
done();
|
|
3064
|
+
} catch (err) {
|
|
3065
|
+
log.error(`Test Failure: ${err}`);
|
|
3066
|
+
done(err);
|
|
3067
|
+
}
|
|
3068
|
+
});
|
|
3069
|
+
} catch (error) {
|
|
3070
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3071
|
+
done(error);
|
|
3072
|
+
}
|
|
3073
|
+
}).timeout(attemptTimeout);
|
|
3074
|
+
it('should error if - missing filterBy', (done) => {
|
|
3075
|
+
try {
|
|
3076
|
+
a.alarms('fakeparam', 'fakeparam', null, null, null, null, null, null, (data, error) => {
|
|
3077
|
+
try {
|
|
3078
|
+
const displayE = 'filterBy is required';
|
|
3079
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alarms', displayE);
|
|
3080
|
+
done();
|
|
3081
|
+
} catch (err) {
|
|
3082
|
+
log.error(`Test Failure: ${err}`);
|
|
3083
|
+
done(err);
|
|
3084
|
+
}
|
|
3085
|
+
});
|
|
3086
|
+
} catch (error) {
|
|
3087
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3088
|
+
done(error);
|
|
3089
|
+
}
|
|
3090
|
+
}).timeout(attemptTimeout);
|
|
3091
|
+
it('should error if - missing filterVal', (done) => {
|
|
3092
|
+
try {
|
|
3093
|
+
a.alarms('fakeparam', 'fakeparam', 'fakeparam', null, null, null, null, null, (data, error) => {
|
|
3094
|
+
try {
|
|
3095
|
+
const displayE = 'filterVal is required';
|
|
3096
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alarms', displayE);
|
|
3097
|
+
done();
|
|
3098
|
+
} catch (err) {
|
|
3099
|
+
log.error(`Test Failure: ${err}`);
|
|
3100
|
+
done(err);
|
|
3101
|
+
}
|
|
3102
|
+
});
|
|
3103
|
+
} catch (error) {
|
|
3104
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3105
|
+
done(error);
|
|
3106
|
+
}
|
|
3107
|
+
}).timeout(attemptTimeout);
|
|
3108
|
+
it('should error if - missing showMitigations', (done) => {
|
|
3109
|
+
try {
|
|
3110
|
+
a.alarms('fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', null, null, null, null, (data, error) => {
|
|
3111
|
+
try {
|
|
3112
|
+
const displayE = 'showMitigations is required';
|
|
3113
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alarms', displayE);
|
|
3114
|
+
done();
|
|
3115
|
+
} catch (err) {
|
|
3116
|
+
log.error(`Test Failure: ${err}`);
|
|
3117
|
+
done(err);
|
|
3118
|
+
}
|
|
3119
|
+
});
|
|
3120
|
+
} catch (error) {
|
|
3121
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3122
|
+
done(error);
|
|
3123
|
+
}
|
|
3124
|
+
}).timeout(attemptTimeout);
|
|
3125
|
+
it('should error if - missing showAlarms', (done) => {
|
|
3126
|
+
try {
|
|
3127
|
+
a.alarms('fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', null, null, null, (data, error) => {
|
|
3128
|
+
try {
|
|
3129
|
+
const displayE = 'showAlarms is required';
|
|
3130
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alarms', displayE);
|
|
3131
|
+
done();
|
|
3132
|
+
} catch (err) {
|
|
3133
|
+
log.error(`Test Failure: ${err}`);
|
|
3134
|
+
done(err);
|
|
3135
|
+
}
|
|
3136
|
+
});
|
|
3137
|
+
} catch (error) {
|
|
3138
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3139
|
+
done(error);
|
|
3140
|
+
}
|
|
3141
|
+
}).timeout(attemptTimeout);
|
|
3142
|
+
it('should error if - missing showMatches', (done) => {
|
|
3143
|
+
try {
|
|
3144
|
+
a.alarms('fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', null, null, (data, error) => {
|
|
3145
|
+
try {
|
|
3146
|
+
const displayE = 'showMatches is required';
|
|
3147
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alarms', displayE);
|
|
3148
|
+
done();
|
|
3149
|
+
} catch (err) {
|
|
3150
|
+
log.error(`Test Failure: ${err}`);
|
|
3151
|
+
done(err);
|
|
3152
|
+
}
|
|
3153
|
+
});
|
|
3154
|
+
} catch (error) {
|
|
3155
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3156
|
+
done(error);
|
|
3157
|
+
}
|
|
3158
|
+
}).timeout(attemptTimeout);
|
|
3159
|
+
it('should error if - missing learningMode', (done) => {
|
|
3160
|
+
try {
|
|
3161
|
+
a.alarms('fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', null, (data, error) => {
|
|
3162
|
+
try {
|
|
3163
|
+
const displayE = 'learningMode is required';
|
|
3164
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alarms', displayE);
|
|
3165
|
+
done();
|
|
3166
|
+
} catch (err) {
|
|
3167
|
+
log.error(`Test Failure: ${err}`);
|
|
3168
|
+
done(err);
|
|
3169
|
+
}
|
|
3170
|
+
});
|
|
3171
|
+
} catch (error) {
|
|
3172
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3173
|
+
done(error);
|
|
3174
|
+
}
|
|
3175
|
+
}).timeout(attemptTimeout);
|
|
3176
|
+
});
|
|
3177
|
+
|
|
3178
|
+
describe('#alertsHistory - errors', () => {
|
|
3179
|
+
it('should have a alertsHistory function', (done) => {
|
|
3180
|
+
try {
|
|
3181
|
+
assert.equal(true, typeof a.alertsHistory === 'function');
|
|
3182
|
+
done();
|
|
3183
|
+
} catch (error) {
|
|
3184
|
+
log.error(`Test Failure: ${error}`);
|
|
3185
|
+
done(error);
|
|
3186
|
+
}
|
|
3187
|
+
}).timeout(attemptTimeout);
|
|
3188
|
+
it('should error if - missing startTime', (done) => {
|
|
3189
|
+
try {
|
|
3190
|
+
a.alertsHistory(null, null, null, null, null, null, null, null, null, (data, error) => {
|
|
3191
|
+
try {
|
|
3192
|
+
const displayE = 'startTime is required';
|
|
3193
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alertsHistory', displayE);
|
|
3194
|
+
done();
|
|
3195
|
+
} catch (err) {
|
|
3196
|
+
log.error(`Test Failure: ${err}`);
|
|
3197
|
+
done(err);
|
|
3198
|
+
}
|
|
3199
|
+
});
|
|
3200
|
+
} catch (error) {
|
|
3201
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3202
|
+
done(error);
|
|
3203
|
+
}
|
|
3204
|
+
}).timeout(attemptTimeout);
|
|
3205
|
+
it('should error if - missing endTime', (done) => {
|
|
3206
|
+
try {
|
|
3207
|
+
a.alertsHistory('fakeparam', null, null, null, null, null, null, null, null, (data, error) => {
|
|
3208
|
+
try {
|
|
3209
|
+
const displayE = 'endTime is required';
|
|
3210
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alertsHistory', displayE);
|
|
3211
|
+
done();
|
|
3212
|
+
} catch (err) {
|
|
3213
|
+
log.error(`Test Failure: ${err}`);
|
|
3214
|
+
done(err);
|
|
3215
|
+
}
|
|
3216
|
+
});
|
|
3217
|
+
} catch (error) {
|
|
3218
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3219
|
+
done(error);
|
|
3220
|
+
}
|
|
3221
|
+
}).timeout(attemptTimeout);
|
|
3222
|
+
it('should error if - missing filterBy', (done) => {
|
|
3223
|
+
try {
|
|
3224
|
+
a.alertsHistory('fakeparam', 'fakeparam', null, null, null, null, null, null, null, (data, error) => {
|
|
3225
|
+
try {
|
|
3226
|
+
const displayE = 'filterBy is required';
|
|
3227
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alertsHistory', displayE);
|
|
3228
|
+
done();
|
|
3229
|
+
} catch (err) {
|
|
3230
|
+
log.error(`Test Failure: ${err}`);
|
|
3231
|
+
done(err);
|
|
3232
|
+
}
|
|
3233
|
+
});
|
|
3234
|
+
} catch (error) {
|
|
3235
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3236
|
+
done(error);
|
|
3237
|
+
}
|
|
3238
|
+
}).timeout(attemptTimeout);
|
|
3239
|
+
it('should error if - missing filterVal', (done) => {
|
|
3240
|
+
try {
|
|
3241
|
+
a.alertsHistory('fakeparam', 'fakeparam', 'fakeparam', null, null, null, null, null, null, (data, error) => {
|
|
3242
|
+
try {
|
|
3243
|
+
const displayE = 'filterVal is required';
|
|
3244
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alertsHistory', displayE);
|
|
3245
|
+
done();
|
|
3246
|
+
} catch (err) {
|
|
3247
|
+
log.error(`Test Failure: ${err}`);
|
|
3248
|
+
done(err);
|
|
3249
|
+
}
|
|
3250
|
+
});
|
|
3251
|
+
} catch (error) {
|
|
3252
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3253
|
+
done(error);
|
|
3254
|
+
}
|
|
3255
|
+
}).timeout(attemptTimeout);
|
|
3256
|
+
it('should error if - missing sortOrder', (done) => {
|
|
3257
|
+
try {
|
|
3258
|
+
a.alertsHistory('fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', null, null, null, null, null, (data, error) => {
|
|
3259
|
+
try {
|
|
3260
|
+
const displayE = 'sortOrder is required';
|
|
3261
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alertsHistory', displayE);
|
|
3262
|
+
done();
|
|
3263
|
+
} catch (err) {
|
|
3264
|
+
log.error(`Test Failure: ${err}`);
|
|
3265
|
+
done(err);
|
|
3266
|
+
}
|
|
3267
|
+
});
|
|
3268
|
+
} catch (error) {
|
|
3269
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3270
|
+
done(error);
|
|
3271
|
+
}
|
|
3272
|
+
}).timeout(attemptTimeout);
|
|
3273
|
+
it('should error if - missing showMitigations', (done) => {
|
|
3274
|
+
try {
|
|
3275
|
+
a.alertsHistory('fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', null, null, null, null, (data, error) => {
|
|
3276
|
+
try {
|
|
3277
|
+
const displayE = 'showMitigations is required';
|
|
3278
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alertsHistory', displayE);
|
|
3279
|
+
done();
|
|
3280
|
+
} catch (err) {
|
|
3281
|
+
log.error(`Test Failure: ${err}`);
|
|
3282
|
+
done(err);
|
|
3283
|
+
}
|
|
3284
|
+
});
|
|
3285
|
+
} catch (error) {
|
|
3286
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3287
|
+
done(error);
|
|
3288
|
+
}
|
|
3289
|
+
}).timeout(attemptTimeout);
|
|
3290
|
+
it('should error if - missing showAlarms', (done) => {
|
|
3291
|
+
try {
|
|
3292
|
+
a.alertsHistory('fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', null, null, null, (data, error) => {
|
|
3293
|
+
try {
|
|
3294
|
+
const displayE = 'showAlarms is required';
|
|
3295
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alertsHistory', displayE);
|
|
3296
|
+
done();
|
|
3297
|
+
} catch (err) {
|
|
3298
|
+
log.error(`Test Failure: ${err}`);
|
|
3299
|
+
done(err);
|
|
3300
|
+
}
|
|
3301
|
+
});
|
|
3302
|
+
} catch (error) {
|
|
3303
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3304
|
+
done(error);
|
|
3305
|
+
}
|
|
3306
|
+
}).timeout(attemptTimeout);
|
|
3307
|
+
it('should error if - missing showMatches', (done) => {
|
|
3308
|
+
try {
|
|
3309
|
+
a.alertsHistory('fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', null, null, (data, error) => {
|
|
3310
|
+
try {
|
|
3311
|
+
const displayE = 'showMatches is required';
|
|
3312
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alertsHistory', displayE);
|
|
3313
|
+
done();
|
|
3314
|
+
} catch (err) {
|
|
3315
|
+
log.error(`Test Failure: ${err}`);
|
|
3316
|
+
done(err);
|
|
3317
|
+
}
|
|
3318
|
+
});
|
|
3319
|
+
} catch (error) {
|
|
3320
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3321
|
+
done(error);
|
|
3322
|
+
}
|
|
3323
|
+
}).timeout(attemptTimeout);
|
|
3324
|
+
it('should error if - missing learningMode', (done) => {
|
|
3325
|
+
try {
|
|
3326
|
+
a.alertsHistory('fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', 'fakeparam', null, (data, error) => {
|
|
3327
|
+
try {
|
|
3328
|
+
const displayE = 'learningMode is required';
|
|
3329
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-alertsHistory', 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('#findUserGroups - errors', () => {
|
|
3344
|
+
it('should have a findUserGroups function', (done) => {
|
|
3345
|
+
try {
|
|
3346
|
+
assert.equal(true, typeof a.findUserGroups === 'function');
|
|
3347
|
+
done();
|
|
3348
|
+
} catch (error) {
|
|
3349
|
+
log.error(`Test Failure: ${error}`);
|
|
3350
|
+
done(error);
|
|
3351
|
+
}
|
|
3352
|
+
}).timeout(attemptTimeout);
|
|
3353
|
+
});
|
|
3354
|
+
|
|
3355
|
+
describe('#findUserGroup - errors', () => {
|
|
3356
|
+
it('should have a findUserGroup function', (done) => {
|
|
3357
|
+
try {
|
|
3358
|
+
assert.equal(true, typeof a.findUserGroup === 'function');
|
|
3359
|
+
done();
|
|
3360
|
+
} catch (error) {
|
|
3361
|
+
log.error(`Test Failure: ${error}`);
|
|
3362
|
+
done(error);
|
|
3363
|
+
}
|
|
3364
|
+
}).timeout(attemptTimeout);
|
|
3365
|
+
it('should error if - missing tenantId', (done) => {
|
|
3366
|
+
try {
|
|
3367
|
+
a.findUserGroup(null, (data, error) => {
|
|
3368
|
+
try {
|
|
3369
|
+
const displayE = 'tenantId is required';
|
|
3370
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-findUserGroup', displayE);
|
|
3371
|
+
done();
|
|
3372
|
+
} catch (err) {
|
|
3373
|
+
log.error(`Test Failure: ${err}`);
|
|
3374
|
+
done(err);
|
|
3375
|
+
}
|
|
3376
|
+
});
|
|
3377
|
+
} catch (error) {
|
|
3378
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3379
|
+
done(error);
|
|
3380
|
+
}
|
|
3381
|
+
}).timeout(attemptTimeout);
|
|
3382
|
+
});
|
|
3383
|
+
|
|
3384
|
+
describe('#createTenantUser - errors', () => {
|
|
3385
|
+
it('should have a createTenantUser function', (done) => {
|
|
3386
|
+
try {
|
|
3387
|
+
assert.equal(true, typeof a.createTenantUser === 'function');
|
|
3388
|
+
done();
|
|
3389
|
+
} catch (error) {
|
|
3390
|
+
log.error(`Test Failure: ${error}`);
|
|
3391
|
+
done(error);
|
|
3392
|
+
}
|
|
3393
|
+
}).timeout(attemptTimeout);
|
|
3394
|
+
it('should error if - missing tenantId', (done) => {
|
|
3395
|
+
try {
|
|
3396
|
+
a.createTenantUser(null, null, (data, error) => {
|
|
3397
|
+
try {
|
|
3398
|
+
const displayE = 'tenantId is required';
|
|
3399
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createTenantUser', displayE);
|
|
3400
|
+
done();
|
|
3401
|
+
} catch (err) {
|
|
3402
|
+
log.error(`Test Failure: ${err}`);
|
|
3403
|
+
done(err);
|
|
3404
|
+
}
|
|
3405
|
+
});
|
|
3406
|
+
} catch (error) {
|
|
3407
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3408
|
+
done(error);
|
|
3409
|
+
}
|
|
3410
|
+
}).timeout(attemptTimeout);
|
|
3411
|
+
it('should error if - missing body', (done) => {
|
|
3412
|
+
try {
|
|
3413
|
+
a.createTenantUser('fakeparam', null, (data, error) => {
|
|
3414
|
+
try {
|
|
3415
|
+
const displayE = 'body is required';
|
|
3416
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-createTenantUser', displayE);
|
|
3417
|
+
done();
|
|
3418
|
+
} catch (err) {
|
|
3419
|
+
log.error(`Test Failure: ${err}`);
|
|
3420
|
+
done(err);
|
|
3421
|
+
}
|
|
3422
|
+
});
|
|
3423
|
+
} catch (error) {
|
|
3424
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3425
|
+
done(error);
|
|
3426
|
+
}
|
|
3427
|
+
}).timeout(attemptTimeout);
|
|
3428
|
+
});
|
|
3429
|
+
|
|
3430
|
+
describe('#deleteTenantUser - errors', () => {
|
|
3431
|
+
it('should have a deleteTenantUser function', (done) => {
|
|
3432
|
+
try {
|
|
3433
|
+
assert.equal(true, typeof a.deleteTenantUser === 'function');
|
|
3434
|
+
done();
|
|
3435
|
+
} catch (error) {
|
|
3436
|
+
log.error(`Test Failure: ${error}`);
|
|
3437
|
+
done(error);
|
|
3438
|
+
}
|
|
3439
|
+
}).timeout(attemptTimeout);
|
|
3440
|
+
it('should error if - missing tenantId', (done) => {
|
|
3441
|
+
try {
|
|
3442
|
+
a.deleteTenantUser(null, null, (data, error) => {
|
|
3443
|
+
try {
|
|
3444
|
+
const displayE = 'tenantId is required';
|
|
3445
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deleteTenantUser', displayE);
|
|
3446
|
+
done();
|
|
3447
|
+
} catch (err) {
|
|
3448
|
+
log.error(`Test Failure: ${err}`);
|
|
3449
|
+
done(err);
|
|
3450
|
+
}
|
|
3451
|
+
});
|
|
3452
|
+
} catch (error) {
|
|
3453
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3454
|
+
done(error);
|
|
3455
|
+
}
|
|
3456
|
+
}).timeout(attemptTimeout);
|
|
3457
|
+
it('should error if - missing userId', (done) => {
|
|
3458
|
+
try {
|
|
3459
|
+
a.deleteTenantUser('fakeparam', null, (data, error) => {
|
|
3460
|
+
try {
|
|
3461
|
+
const displayE = 'userId is required';
|
|
3462
|
+
runErrorAsserts(data, error, 'AD.300', 'Test-kentik_v5-adapter-deleteTenantUser', displayE);
|
|
3463
|
+
done();
|
|
3464
|
+
} catch (err) {
|
|
3465
|
+
log.error(`Test Failure: ${err}`);
|
|
3466
|
+
done(err);
|
|
3467
|
+
}
|
|
3468
|
+
});
|
|
3469
|
+
} catch (error) {
|
|
3470
|
+
log.error(`Adapter Exception: ${error}`);
|
|
3471
|
+
done(error);
|
|
3472
|
+
}
|
|
3473
|
+
}).timeout(attemptTimeout);
|
|
3474
|
+
});
|
|
3475
|
+
});
|
|
3476
|
+
});
|