@nsshunt/stsdatamanagement 1.18.178 → 1.18.180
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cliworker.js +10 -17
- package/dist/cliworker.js.map +1 -1
- package/dist/commonTypes.js +11 -14
- package/dist/commonTypes.js.map +1 -1
- package/dist/dalUserManager.js +7 -11
- package/dist/dalUserManager.js.map +1 -1
- package/dist/dalUserManager.test.js +45 -51
- package/dist/dalUserManager.test.js.map +1 -1
- package/dist/databaseutils.js +19 -26
- package/dist/databaseutils.js.map +1 -1
- package/dist/datagenerator.js +30 -33
- package/dist/datagenerator.js.map +1 -1
- package/dist/dbAccessLayerManager.js +5 -9
- package/dist/dbAccessLayerManager.js.map +1 -1
- package/dist/dbaccess.js +7 -23
- package/dist/dbaccess.js.map +1 -1
- package/dist/dbbuild.test.js +42 -47
- package/dist/dbbuild.test.js.map +1 -1
- package/dist/dberrors.js +13 -22
- package/dist/dberrors.js.map +1 -1
- package/dist/pcaccesslayer-entity.test.js +166 -171
- package/dist/pcaccesslayer-entity.test.js.map +1 -1
- package/dist/pcaccesslayer.test.js +208 -213
- package/dist/pcaccesslayer.test.js.map +1 -1
- package/dist/pgaccesslayer-old.js +114 -154
- package/dist/pgaccesslayer-old.js.map +1 -1
- package/dist/pgaccesslayer.js +131 -135
- package/dist/pgaccesslayer.js.map +1 -1
- package/dist/pgpoolmanager.js +32 -39
- package/dist/pgpoolmanager.js.map +1 -1
- package/dist/pgutils.js +10 -14
- package/dist/pgutils.js.map +1 -1
- package/dist/setupdb.js +8 -14
- package/dist/setupdb.js.map +1 -1
- package/package.json +5 -5
- package/types/datagenerator.d.ts.map +1 -1
package/dist/datagenerator.js
CHANGED
|
@@ -1,27 +1,25 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.DataGenerator = void 0;
|
|
7
1
|
// https://medium.com/netscape/a-guide-to-create-a-nodejs-command-line-package-c2166ad0452e
|
|
8
2
|
// https://developer.okta.com/blog/2019/06/18/command-line-app-with-nodejs
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
import { goptions } from '@nsshunt/stsconfig';
|
|
4
|
+
import si from 'systeminformation'; // https://systeminformation.io/
|
|
11
5
|
//import { v4 as uuidv4 } from 'uuid'
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
6
|
+
import { randomUUID } from 'node:crypto';
|
|
7
|
+
import chalk from 'chalk';
|
|
8
|
+
import path from 'node:path';
|
|
9
|
+
import { fileURLToPath } from 'node:url';
|
|
10
|
+
//(global as any).appRoot = path.resolve(__dirname);
|
|
11
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
12
|
+
const __dirname = path.dirname(__filename);
|
|
15
13
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
16
|
-
global.appRoot =
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
14
|
+
global.appRoot = path.resolve(__dirname);
|
|
15
|
+
import axios from 'axios';
|
|
16
|
+
import cliProgress from 'cli-progress';
|
|
17
|
+
import prompts from 'prompts';
|
|
18
|
+
import { Sleep } from '@nsshunt/stsutils';
|
|
21
19
|
const userid = 'dbinitrunner';
|
|
22
20
|
const resrandomuserprefix = 'RESRU-';
|
|
23
|
-
|
|
24
|
-
class DataGenerator {
|
|
21
|
+
import { CliWorker } from './cliworker.js';
|
|
22
|
+
export class DataGenerator {
|
|
25
23
|
#options;
|
|
26
24
|
#accessLayer;
|
|
27
25
|
#useMultiBar = false;
|
|
@@ -46,7 +44,7 @@ class DataGenerator {
|
|
|
46
44
|
}
|
|
47
45
|
//@@ JSON to come from config file if bound to a K6 script - so each K6 script should also have a prompts JSON for configuration - make generic
|
|
48
46
|
AskAddRandomUser = async () => {
|
|
49
|
-
const response = await (
|
|
47
|
+
const response = await prompts([
|
|
50
48
|
{
|
|
51
49
|
type: 'number',
|
|
52
50
|
name: 'iterations',
|
|
@@ -76,8 +74,8 @@ class DataGenerator {
|
|
|
76
74
|
};
|
|
77
75
|
RunAddRandomUser = async (iterations, blocksize, chunksize, sleepsize) => {
|
|
78
76
|
// create new progress bar
|
|
79
|
-
const b1 = new
|
|
80
|
-
format: 'Random User |' +
|
|
77
|
+
const b1 = new cliProgress.SingleBar({
|
|
78
|
+
format: 'Random User |' + chalk.cyan('{bar}') + '| {percentage}% || {value}/{total} Iterations || Size: {totalDataSize} || ETA: {eta_formatted}',
|
|
81
79
|
barCompleteChar: '\u2588',
|
|
82
80
|
barIncompleteChar: '\u2591',
|
|
83
81
|
hideCursor: true,
|
|
@@ -89,7 +87,7 @@ class DataGenerator {
|
|
|
89
87
|
let promarray = [];
|
|
90
88
|
for (let i = 0; i < iterations; i++) {
|
|
91
89
|
const pp = async () => {
|
|
92
|
-
const retVal = await
|
|
90
|
+
const retVal = await axios.get(`https://randomuser.me/api/?results=${blocksize}&nat=au,nz,us,gb`).catch(error => {
|
|
93
91
|
this.#LogErrorMessage(`Error in randomuser get: ${error}`);
|
|
94
92
|
if (error.response) {
|
|
95
93
|
// Request made and server responded
|
|
@@ -115,7 +113,7 @@ class DataGenerator {
|
|
|
115
113
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
116
114
|
const allPromises = randomusers.map(async (data) => {
|
|
117
115
|
totalDataSize += JSON.stringify(data).length;
|
|
118
|
-
const id = resrandomuserprefix +
|
|
116
|
+
const id = resrandomuserprefix + randomUUID();
|
|
119
117
|
await this.#accessLayer.createResource(userid, id, data);
|
|
120
118
|
b1.increment({ totalDataSize: totalDataSize });
|
|
121
119
|
});
|
|
@@ -125,7 +123,7 @@ class DataGenerator {
|
|
|
125
123
|
if ((i + 1) % chunksize === 0) {
|
|
126
124
|
await Promise.all(promarray);
|
|
127
125
|
promarray = [];
|
|
128
|
-
await
|
|
126
|
+
await Sleep(sleepsize);
|
|
129
127
|
}
|
|
130
128
|
//b1.increment({ totalDataSize: totalDataSize });
|
|
131
129
|
}
|
|
@@ -135,7 +133,7 @@ class DataGenerator {
|
|
|
135
133
|
b1.stop();
|
|
136
134
|
};
|
|
137
135
|
AskAddFaker = async () => {
|
|
138
|
-
const response = await (
|
|
136
|
+
const response = await prompts([
|
|
139
137
|
{
|
|
140
138
|
type: 'number',
|
|
141
139
|
name: 'start',
|
|
@@ -175,11 +173,11 @@ class DataGenerator {
|
|
|
175
173
|
this.#useMultiBar = options.useMultiBar;
|
|
176
174
|
let multibar = null;
|
|
177
175
|
if (this.#useMultiBar === true) {
|
|
178
|
-
multibar = new
|
|
179
|
-
format: 'Faker |' +
|
|
176
|
+
multibar = new cliProgress.MultiBar({
|
|
177
|
+
format: 'Faker |' + chalk.cyan('{bar}') + '| {percentage}% || {value}/{total} Iterations || Avg Size: {avgDataSize} || Size: {totalDataSize} || Duration: {duration_formatted} || ETA: {eta_formatted}',
|
|
180
178
|
clearOnComplete: false,
|
|
181
179
|
hideCursor: true
|
|
182
|
-
},
|
|
180
|
+
}, cliProgress.Presets.shades_grey);
|
|
183
181
|
}
|
|
184
182
|
const pa = [];
|
|
185
183
|
const valueObject = {
|
|
@@ -188,8 +186,8 @@ class DataGenerator {
|
|
|
188
186
|
cpu: '*',
|
|
189
187
|
mem: '*'
|
|
190
188
|
};
|
|
191
|
-
const sysinfo = await
|
|
192
|
-
const useCPUs =
|
|
189
|
+
const sysinfo = await si.get(valueObject);
|
|
190
|
+
const useCPUs = goptions.useCPUs;
|
|
193
191
|
let numCPUs = 0;
|
|
194
192
|
if (useCPUs > 0) {
|
|
195
193
|
if (useCPUs >= 1) {
|
|
@@ -221,7 +219,7 @@ class DataGenerator {
|
|
|
221
219
|
bar = multibar.create(iterations, 0);
|
|
222
220
|
}
|
|
223
221
|
if (typeof bar === 'undefined') {
|
|
224
|
-
this.#LogDebugMessage(
|
|
222
|
+
this.#LogDebugMessage(chalk.yellow(`No TTY available for multi-bar progress.`));
|
|
225
223
|
bar = null;
|
|
226
224
|
}
|
|
227
225
|
bars.push(bar);
|
|
@@ -254,9 +252,8 @@ class DataGenerator {
|
|
|
254
252
|
progress,
|
|
255
253
|
logger: this.#options.logger
|
|
256
254
|
};
|
|
257
|
-
const worker = new
|
|
255
|
+
const worker = new CliWorker(options);
|
|
258
256
|
return worker.Run();
|
|
259
257
|
};
|
|
260
258
|
}
|
|
261
|
-
exports.DataGenerator = DataGenerator;
|
|
262
259
|
//# sourceMappingURL=datagenerator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datagenerator.js","sourceRoot":"","sources":["../src/datagenerator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"datagenerator.js","sourceRoot":"","sources":["../src/datagenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const commonTypes_js_1 = require("./commonTypes.js");
|
|
5
|
-
const pgaccesslayer_js_1 = require("./pgaccesslayer.js");
|
|
6
|
-
class DBAccessLayerManager {
|
|
1
|
+
import { accessLayerType } from './commonTypes.js';
|
|
2
|
+
import { PGAccessLayer } from './pgaccesslayer.js';
|
|
3
|
+
export class DBAccessLayerManager {
|
|
7
4
|
CreateAccessLayer(options) {
|
|
8
5
|
switch (options.accessLayerType) {
|
|
9
|
-
case
|
|
10
|
-
return new
|
|
6
|
+
case accessLayerType.postgresql:
|
|
7
|
+
return new PGAccessLayer(options.accessLayerOptions);
|
|
11
8
|
default:
|
|
12
9
|
throw new Error(`Could not create DBAccessLayer. Unknown type: [${options.accessLayerType}]`);
|
|
13
10
|
}
|
|
14
11
|
}
|
|
15
12
|
}
|
|
16
|
-
exports.DBAccessLayerManager = DBAccessLayerManager;
|
|
17
13
|
//# sourceMappingURL=dbAccessLayerManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dbAccessLayerManager.js","sourceRoot":"","sources":["../src/dbAccessLayerManager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dbAccessLayerManager.js","sourceRoot":"","sources":["../src/dbAccessLayerManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuE,eAAe,EAAyB,MAAM,kBAAkB,CAAA;AAC9I,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,MAAM,OAAO,oBAAoB;IAC7B,iBAAiB,CAAC,OAAqC;QACnD,QAAQ,OAAO,CAAC,eAAe,EAAE,CAAC;YAClC,KAAK,eAAe,CAAC,UAAU;gBAC3B,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,kBAA2C,CAAC,CAAC;YAClF;gBACI,MAAM,IAAI,KAAK,CAAC,kDAAkD,OAAO,CAAC,eAAe,GAAG,CAAC,CAAA;QACjG,CAAC;IACL,CAAC;CACJ"}
|
package/dist/dbaccess.js
CHANGED
|
@@ -1,24 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./commonTypes.js"), exports);
|
|
18
|
-
__exportStar(require("./pgutils.js"), exports);
|
|
19
|
-
__exportStar(require("./databaseutils.js"), exports);
|
|
20
|
-
__exportStar(require("./datagenerator.js"), exports);
|
|
21
|
-
__exportStar(require("./setupdb.js"), exports);
|
|
22
|
-
__exportStar(require("./dberrors.js"), exports);
|
|
23
|
-
__exportStar(require("./dbAccessLayerManager.js"), exports);
|
|
1
|
+
export * from './commonTypes.js';
|
|
2
|
+
export * from './pgutils.js';
|
|
3
|
+
export * from './databaseutils.js';
|
|
4
|
+
export * from './datagenerator.js';
|
|
5
|
+
export * from './setupdb.js';
|
|
6
|
+
export * from './dberrors.js';
|
|
7
|
+
export * from './dbAccessLayerManager.js';
|
|
24
8
|
//# sourceMappingURL=dbaccess.js.map
|
package/dist/dbaccess.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dbaccess.js","sourceRoot":"","sources":["../src/dbaccess.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dbaccess.js","sourceRoot":"","sources":["../src/dbaccess.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,2BAA2B,CAAA"}
|
package/dist/dbbuild.test.js
CHANGED
|
@@ -1,32 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
const databaseutils_js_1 = require("./databaseutils.js");
|
|
11
|
-
const testcontainers_1 = require("testcontainers");
|
|
12
|
-
const winston_1 = __importDefault(require("winston"));
|
|
13
|
-
const pgaccesslayer_old_js_1 = require("./pgaccesslayer-old.js");
|
|
14
|
-
const pgpoolmanager_js_1 = require("./pgpoolmanager.js");
|
|
1
|
+
import { beforeAll, afterAll, test, describe, expect } from 'vitest';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import { goptions, $ResetOptions } from '@nsshunt/stsconfig';
|
|
4
|
+
import { JestSleep, Sleep } from '@nsshunt/stsutils';
|
|
5
|
+
import { DatabaseUtils } from './databaseutils.js';
|
|
6
|
+
import { GenericContainer } from "testcontainers";
|
|
7
|
+
import winston from 'winston';
|
|
8
|
+
import { PGAccessLayer } from './pgaccesslayer-old.js';
|
|
9
|
+
import { PGPoolManager } from './pgpoolmanager.js';
|
|
15
10
|
// keep skipped
|
|
16
|
-
|
|
11
|
+
describe.skip("Test dbbuild", () => {
|
|
17
12
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
18
13
|
let container;
|
|
19
14
|
let accessLayer;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const logger =
|
|
15
|
+
beforeAll(async () => {
|
|
16
|
+
winston.format.combine(winston.format.colorize(), winston.format.simple());
|
|
17
|
+
const logger = winston.createLogger({
|
|
23
18
|
level: 'silly',
|
|
24
|
-
format:
|
|
19
|
+
format: winston.format.combine(winston.format.colorize(), winston.format.simple()),
|
|
25
20
|
transports: [
|
|
26
|
-
new
|
|
21
|
+
new winston.transports.Console(),
|
|
27
22
|
]
|
|
28
23
|
});
|
|
29
|
-
container = await new
|
|
24
|
+
container = await new GenericContainer("postgres")
|
|
30
25
|
.withExposedPorts(5432)
|
|
31
26
|
.withEnvironment({
|
|
32
27
|
POSTGRES_PASSWORD: "postgres",
|
|
@@ -34,16 +29,16 @@ vitest_1.describe.skip("Test dbbuild", () => {
|
|
|
34
29
|
})
|
|
35
30
|
.withCommand(['-c', 'max_connections=20'])
|
|
36
31
|
.start();
|
|
37
|
-
await
|
|
32
|
+
await Sleep(1000);
|
|
38
33
|
const httpPort = container.getMappedPort(5432);
|
|
39
34
|
const host = container.getHost();
|
|
40
35
|
process.env.DB_HOST = `${host}:${httpPort}`;
|
|
41
36
|
process.env.POOL_SIZE = '10';
|
|
42
|
-
|
|
43
|
-
logger.info(
|
|
44
|
-
logger.info(
|
|
45
|
-
logger.info(
|
|
46
|
-
logger.info(
|
|
37
|
+
$ResetOptions();
|
|
38
|
+
logger.info(chalk.green(`httpPort: [${httpPort}]`));
|
|
39
|
+
logger.info(chalk.green(`host: [${host}]`));
|
|
40
|
+
logger.info(chalk.yellow(`connectionString: [${goptions.connectionString}]`));
|
|
41
|
+
logger.info(chalk.yellow(`defaultDatabaseConnectionString: [${goptions.defaultDatabaseConnectionString}]`));
|
|
47
42
|
const dbOptions = {
|
|
48
43
|
start: 0,
|
|
49
44
|
iterations: 10000,
|
|
@@ -52,27 +47,27 @@ vitest_1.describe.skip("Test dbbuild", () => {
|
|
|
52
47
|
workerScriptFolder: './dist', //@@
|
|
53
48
|
useMultiBar: false
|
|
54
49
|
};
|
|
55
|
-
const dbUtils = new
|
|
50
|
+
const dbUtils = new DatabaseUtils({
|
|
56
51
|
logger
|
|
57
52
|
});
|
|
58
53
|
await dbUtils.CreateDatabase(dbOptions);
|
|
59
|
-
await
|
|
60
|
-
logger.info(
|
|
61
|
-
accessLayer = new
|
|
62
|
-
poolManager: new
|
|
54
|
+
await Sleep(1000);
|
|
55
|
+
logger.info(chalk.green(`Starting accessLayer`));
|
|
56
|
+
accessLayer = new PGAccessLayer({
|
|
57
|
+
poolManager: new PGPoolManager({
|
|
63
58
|
logger,
|
|
64
59
|
usedefaultdb: false,
|
|
65
60
|
}),
|
|
66
61
|
logger
|
|
67
62
|
});
|
|
68
|
-
logger.info(
|
|
63
|
+
logger.info(chalk.green(`accessLayer:startdatabase()`));
|
|
69
64
|
await accessLayer.startdatabase();
|
|
70
|
-
logger.info(
|
|
65
|
+
logger.info(chalk.green(`accessLayer:deleteResources()`));
|
|
71
66
|
await accessLayer.deleteResources('JTST%', 'jesttest');
|
|
72
67
|
}, 120000);
|
|
73
|
-
|
|
68
|
+
test('Testing Database entity delete and creates', async () => {
|
|
74
69
|
const outerIterations = 50;
|
|
75
|
-
|
|
70
|
+
expect.assertions(4 + outerIterations);
|
|
76
71
|
const start = 100;
|
|
77
72
|
const num = 10;
|
|
78
73
|
let index = start;
|
|
@@ -93,8 +88,8 @@ vitest_1.describe.skip("Test dbbuild", () => {
|
|
|
93
88
|
}
|
|
94
89
|
const allPromises = myarray.map(async (data) => accessLayer.createResource('jesttest', data.resourceid, JSON.stringify(data)));
|
|
95
90
|
const retval = await Promise.all(allPromises);
|
|
96
|
-
|
|
97
|
-
await
|
|
91
|
+
expect(retval.map(rval => rval.status)).toEqual(retval.map(() => 201));
|
|
92
|
+
await Sleep(10);
|
|
98
93
|
}
|
|
99
94
|
const userResourceType = {
|
|
100
95
|
name: 'user'
|
|
@@ -121,38 +116,38 @@ vitest_1.describe.skip("Test dbbuild", () => {
|
|
|
121
116
|
resname: 'user',
|
|
122
117
|
entname: 'user1'
|
|
123
118
|
});
|
|
124
|
-
|
|
119
|
+
expect(userEntity1.detail).toMatchObject(userResource1);
|
|
125
120
|
const userEntity2 = await accessLayer.getEntityEx({
|
|
126
121
|
resname: 'user',
|
|
127
122
|
entname: 'user2'
|
|
128
123
|
});
|
|
129
|
-
|
|
124
|
+
expect(userEntity2.detail).toMatchObject(userResource2);
|
|
130
125
|
const entities1 = await accessLayer.getEntities({
|
|
131
126
|
resname: 'user'
|
|
132
127
|
});
|
|
133
|
-
|
|
128
|
+
expect(entities1.detail).toMatchObject([
|
|
134
129
|
userResourceSaveRecord1.detail,
|
|
135
130
|
userResourceSaveRecord2.detail
|
|
136
131
|
]);
|
|
137
132
|
const entities2 = await accessLayer.getEntitiesEx({
|
|
138
133
|
resname: 'user'
|
|
139
134
|
});
|
|
140
|
-
|
|
135
|
+
expect(entities2.detail).toMatchObject([
|
|
141
136
|
userResource1,
|
|
142
137
|
userResource2
|
|
143
138
|
]);
|
|
144
139
|
}, 120000);
|
|
145
|
-
|
|
140
|
+
afterAll(async () => {
|
|
146
141
|
await accessLayer.deleteResources('JTST%', 'testsystemuserid');
|
|
147
142
|
await accessLayer.enddatabase();
|
|
148
|
-
await
|
|
143
|
+
await JestSleep();
|
|
149
144
|
if (container) {
|
|
150
145
|
await container.stop();
|
|
151
146
|
}
|
|
152
147
|
}, 30000);
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
148
|
+
test('Testing JWKS', async () => {
|
|
149
|
+
expect.assertions(1);
|
|
150
|
+
expect(200).toEqual(200);
|
|
156
151
|
});
|
|
157
152
|
});
|
|
158
153
|
//# sourceMappingURL=dbbuild.test.js.map
|
package/dist/dbbuild.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dbbuild.test.js","sourceRoot":"","sources":["../src/dbbuild.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dbbuild.test.js","sourceRoot":"","sources":["../src/dbbuild.test.ts"],"names":[],"mappings":"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"}
|
package/dist/dberrors.js
CHANGED
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.STSNotAuthorized = exports.STSInvalidCredentials = exports.STSDatabaseAccessError = exports.STSResourceMalformedError = exports.STSResourceNotFoundError = exports.STSDataManagementError = void 0;
|
|
4
|
-
const http_status_codes_1 = require("http-status-codes");
|
|
1
|
+
import { StatusCodes } from 'http-status-codes';
|
|
5
2
|
// https://javascript.info/custom-errors
|
|
6
3
|
// https://rclayton.silvrback.com/custom-errors-in-node-js
|
|
7
|
-
class STSDataManagementError extends Error {
|
|
4
|
+
export class STSDataManagementError extends Error {
|
|
8
5
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
9
6
|
detail = null;
|
|
10
|
-
status =
|
|
7
|
+
status = StatusCodes.INTERNAL_SERVER_ERROR;
|
|
11
8
|
#sourceError;
|
|
12
9
|
constructor(message, sourceError) {
|
|
13
10
|
super(message);
|
|
@@ -24,19 +21,17 @@ class STSDataManagementError extends Error {
|
|
|
24
21
|
return this.#sourceError;
|
|
25
22
|
}
|
|
26
23
|
}
|
|
27
|
-
|
|
28
|
-
class STSResourceNotFoundError extends STSDataManagementError {
|
|
24
|
+
export class STSResourceNotFoundError extends STSDataManagementError {
|
|
29
25
|
constructor(resource, resourceId, sourceError) {
|
|
30
26
|
super(`Resource [${resource}] not found using ID: [${resourceId}]`, sourceError);
|
|
31
27
|
this.detail = {
|
|
32
28
|
resourceId,
|
|
33
29
|
resource
|
|
34
30
|
};
|
|
35
|
-
this.status =
|
|
31
|
+
this.status = StatusCodes.NOT_FOUND;
|
|
36
32
|
}
|
|
37
33
|
}
|
|
38
|
-
|
|
39
|
-
class STSResourceMalformedError extends STSDataManagementError {
|
|
34
|
+
export class STSResourceMalformedError extends STSDataManagementError {
|
|
40
35
|
constructor(resource, resourceId, resourceRaw, error, extraDetail, sourceError) {
|
|
41
36
|
super(`Resource [${resource}:${resourceId}] is malformed.`, sourceError);
|
|
42
37
|
this.detail = {
|
|
@@ -46,11 +41,10 @@ class STSResourceMalformedError extends STSDataManagementError {
|
|
|
46
41
|
error,
|
|
47
42
|
extraDetail
|
|
48
43
|
};
|
|
49
|
-
this.status =
|
|
44
|
+
this.status = StatusCodes.INTERNAL_SERVER_ERROR;
|
|
50
45
|
}
|
|
51
46
|
}
|
|
52
|
-
|
|
53
|
-
class STSDatabaseAccessError extends STSDataManagementError {
|
|
47
|
+
export class STSDatabaseAccessError extends STSDataManagementError {
|
|
54
48
|
constructor(resource, resourceId, error, sourceError) {
|
|
55
49
|
super(`Database access error reading resource: [${resource}:${resourceId}]`, sourceError);
|
|
56
50
|
this.detail = {
|
|
@@ -58,30 +52,27 @@ class STSDatabaseAccessError extends STSDataManagementError {
|
|
|
58
52
|
resource,
|
|
59
53
|
error
|
|
60
54
|
};
|
|
61
|
-
this.status =
|
|
55
|
+
this.status = StatusCodes.INTERNAL_SERVER_ERROR;
|
|
62
56
|
}
|
|
63
57
|
}
|
|
64
|
-
|
|
65
|
-
class STSInvalidCredentials extends STSDataManagementError {
|
|
58
|
+
export class STSInvalidCredentials extends STSDataManagementError {
|
|
66
59
|
constructor(resource, resourceId, sourceError) {
|
|
67
60
|
super(`Invalid credentials for resource: [${resource}:${resourceId}]`, sourceError);
|
|
68
61
|
this.detail = {
|
|
69
62
|
resourceId,
|
|
70
63
|
resource,
|
|
71
64
|
};
|
|
72
|
-
this.status =
|
|
65
|
+
this.status = StatusCodes.INTERNAL_SERVER_ERROR;
|
|
73
66
|
}
|
|
74
67
|
}
|
|
75
|
-
|
|
76
|
-
class STSNotAuthorized extends STSDataManagementError {
|
|
68
|
+
export class STSNotAuthorized extends STSDataManagementError {
|
|
77
69
|
constructor(clientId, audience, sourceError) {
|
|
78
70
|
super(`Not Authorized: [${clientId}:${audience}]`, sourceError);
|
|
79
71
|
this.detail = {
|
|
80
72
|
clientId,
|
|
81
73
|
audience
|
|
82
74
|
};
|
|
83
|
-
this.status =
|
|
75
|
+
this.status = StatusCodes.INTERNAL_SERVER_ERROR;
|
|
84
76
|
}
|
|
85
77
|
}
|
|
86
|
-
exports.STSNotAuthorized = STSNotAuthorized;
|
|
87
78
|
//# sourceMappingURL=dberrors.js.map
|
package/dist/dberrors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dberrors.js","sourceRoot":"","sources":["../src/dberrors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dberrors.js","sourceRoot":"","sources":["../src/dberrors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,wCAAwC;AACxC,0DAA0D;AAC1D,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC7C,+DAA+D;IAC/D,MAAM,GAAQ,IAAI,CAAC;IACnB,MAAM,GAAgB,WAAW,CAAC,qBAAqB,CAAC;IACxD,YAAY,CAAQ;IAEpB,YAAY,OAAe,EAAE,WAAmB;QAC5C,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAI,WAAW,EAAE,CAAC;YACd,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QACpC,CAAC;QAED,8DAA8D;QAC9D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAElC,8DAA8D;QAC9D,kFAAkF;QAClF,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAA;IAC5B,CAAC;CACJ;AAED,MAAM,OAAO,wBAAyB,SAAQ,sBAAsB;IAChE,YAAY,QAAgB,EAAE,UAAkB,EAAE,WAAmB;QACjE,KAAK,CAAC,aAAa,QAAQ,0BAA0B,UAAU,GAAG,EAAE,WAAW,CAAC,CAAC;QACjF,IAAI,CAAC,MAAM,GAAG;YACV,UAAU;YACV,QAAQ;SACX,CAAA;QACD,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC;IACxC,CAAC;CACJ;AAED,MAAM,OAAO,yBAA0B,SAAQ,sBAAsB;IACjE,YAAY,QAAgB,EAAE,UAAkB,EAAE,WAAmB,EAAE,KAAa,EAAE,WAAmB,EAAE,WAAmB;QAC1H,KAAK,CAAC,aAAa,QAAQ,IAAI,UAAU,iBAAiB,EAAE,WAAW,CAAC,CAAC;QACzE,IAAI,CAAC,MAAM,GAAG;YACV,UAAU;YACV,QAAQ;YACR,WAAW;YACX,KAAK;YACL,WAAW;SACd,CAAA;QACD,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,qBAAqB,CAAC;IACpD,CAAC;CACJ;AAED,MAAM,OAAO,sBAAuB,SAAQ,sBAAsB;IAC9D,YAAY,QAAgB,EAAE,UAAkB,EAAE,KAAa,EAAE,WAAmB;QAChF,KAAK,CAAC,4CAA4C,QAAQ,IAAI,UAAU,GAAG,EAAE,WAAW,CAAC,CAAC;QAC1F,IAAI,CAAC,MAAM,GAAG;YACV,UAAU;YACV,QAAQ;YACR,KAAK;SACR,CAAA;QACD,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,qBAAqB,CAAC;IACpD,CAAC;CACJ;AAED,MAAM,OAAO,qBAAsB,SAAQ,sBAAsB;IAC7D,YAAY,QAAgB,EAAE,UAAkB,EAAE,WAAmB;QACjE,KAAK,CAAC,sCAAsC,QAAQ,IAAI,UAAU,GAAG,EAAE,WAAW,CAAC,CAAC;QACpF,IAAI,CAAC,MAAM,GAAG;YACV,UAAU;YACV,QAAQ;SACX,CAAA;QACD,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,qBAAqB,CAAC;IACpD,CAAC;CACJ;AAED,MAAM,OAAO,gBAAiB,SAAQ,sBAAsB;IACxD,YAAY,QAAgB,EAAE,QAAgB,EAAE,WAAmB;QAC/D,KAAK,CAAC,oBAAoB,QAAQ,IAAI,QAAQ,GAAG,EAAE,WAAW,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,GAAG;YACV,QAAQ;YACR,QAAQ;SACX,CAAA;QACD,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,qBAAqB,CAAC;IACpD,CAAC;CACJ"}
|