@digitraffic/common 2022.10.5 → 2022.10.7-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.
Files changed (92) hide show
  1. package/README.md +49 -0
  2. package/aws/index.d.ts +1 -0
  3. package/aws/index.js +18 -0
  4. package/aws/infra/api/index.d.ts +1 -0
  5. package/aws/infra/api/index.js +18 -0
  6. package/aws/infra/api/responses.js +1 -1
  7. package/aws/infra/stack/lambda-configs.js +1 -1
  8. package/aws/infra/stack/rest_apis.d.ts +1 -0
  9. package/aws/infra/stack/rest_apis.js +8 -2
  10. package/aws/infra/stack/stack.d.ts +4 -1
  11. package/aws/infra/stack/stack.js +1 -1
  12. package/aws/infra/usage-plans.js +1 -1
  13. package/aws/types/errors.js +1 -1
  14. package/aws/types/tags.js +1 -1
  15. package/database/last-updated.js +10 -10
  16. package/package.json +27 -13
  17. package/test/httpserver.js +1 -1
  18. package/types/index.d.ts +1 -0
  19. package/types/index.js +18 -0
  20. package/types/language.js +1 -1
  21. package/utils/geometry.js +1 -1
  22. package/src/aws/infra/api/integration.js +0 -52
  23. package/src/aws/infra/api/response.js +0 -61
  24. package/src/aws/infra/api/responses.js +0 -79
  25. package/src/aws/infra/api/static-integration.js +0 -54
  26. package/src/aws/infra/canaries/canary-alarm.js +0 -26
  27. package/src/aws/infra/canaries/canary-parameters.js +0 -3
  28. package/src/aws/infra/canaries/canary-role.js +0 -46
  29. package/src/aws/infra/canaries/canary.js +0 -29
  30. package/src/aws/infra/canaries/database-canary.js +0 -55
  31. package/src/aws/infra/canaries/database-checker.js +0 -109
  32. package/src/aws/infra/canaries/url-canary.js +0 -46
  33. package/src/aws/infra/canaries/url-checker.js +0 -238
  34. package/src/aws/infra/documentation.js +0 -95
  35. package/src/aws/infra/scheduler.js +0 -31
  36. package/src/aws/infra/security-rule.js +0 -39
  37. package/src/aws/infra/sqs-integration.js +0 -93
  38. package/src/aws/infra/sqs-queue.js +0 -130
  39. package/src/aws/infra/stack/lambda-configs.js +0 -93
  40. package/src/aws/infra/stack/monitoredfunction.js +0 -135
  41. package/src/aws/infra/stack/rest_apis.js +0 -179
  42. package/src/aws/infra/stack/stack-checking-aspect.js +0 -163
  43. package/src/aws/infra/stack/stack.js +0 -58
  44. package/src/aws/infra/stack/subscription.js +0 -41
  45. package/src/aws/infra/usage-plans.js +0 -42
  46. package/src/aws/runtime/apikey.js +0 -13
  47. package/src/aws/runtime/digitraffic-integration-response.js +0 -26
  48. package/src/aws/runtime/messaging.js +0 -31
  49. package/src/aws/runtime/s3.js +0 -30
  50. package/src/aws/runtime/secrets/dbsecret.js +0 -96
  51. package/src/aws/runtime/secrets/proxy-holder.js +0 -26
  52. package/src/aws/runtime/secrets/rds-holder.js +0 -26
  53. package/src/aws/runtime/secrets/secret-holder.js +0 -73
  54. package/src/aws/runtime/secrets/secret.js +0 -43
  55. package/src/aws/types/errors.js +0 -9
  56. package/src/aws/types/lambda-response.js +0 -28
  57. package/src/aws/types/mediatypes.js +0 -15
  58. package/src/aws/types/model-with-reference.js +0 -3
  59. package/src/aws/types/proxytypes.js +0 -3
  60. package/src/aws/types/tags.js +0 -7
  61. package/src/database/cached.js +0 -32
  62. package/src/database/database.js +0 -62
  63. package/src/database/last-updated.js +0 -54
  64. package/src/marine/id_utils.js +0 -33
  65. package/src/marine/rtz.js +0 -3
  66. package/src/test/asserter.js +0 -45
  67. package/src/test/db-testutils.js +0 -31
  68. package/src/test/httpserver.js +0 -67
  69. package/src/test/secret.js +0 -25
  70. package/src/test/secrets-manager.js +0 -59
  71. package/src/test/testutils.js +0 -44
  72. package/src/types/input-error.js +0 -7
  73. package/src/types/language.js +0 -10
  74. package/src/types/traffictype.js +0 -13
  75. package/src/types/validator.js +0 -14
  76. package/src/utils/api-model.js +0 -129
  77. package/src/utils/base64.js +0 -21
  78. package/src/utils/date-utils.js +0 -34
  79. package/src/utils/geojson-types.js +0 -18
  80. package/src/utils/geometry.js +0 -140
  81. package/src/utils/retry.js +0 -50
  82. package/src/utils/slack.js +0 -25
  83. package/src/utils/utils.js +0 -40
  84. package/test/marine/id_utils.test.js +0 -69
  85. package/test/promise/promise.test.js +0 -125
  86. package/test/secrets/dbsecret.test.js +0 -71
  87. package/test/secrets/secret-holder.test.js +0 -124
  88. package/test/secrets/secret.test.js +0 -66
  89. package/test/test/httpserver.test.js +0 -87
  90. package/test/utils/date-utils.test.js +0 -51
  91. package/test/utils/geometry.test.js +0 -49
  92. package/test/utils/utils.test.js +0 -49
@@ -1,71 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const secrets_manager_1 = require("../../src/test/secrets-manager");
27
- const sinon = __importStar(require("sinon"));
28
- const SECRET_ID = "test_secret";
29
- const SECRET_WITH_PREFIX = {
30
- "prefix.value": "value",
31
- "prefix.name": "name",
32
- "wrong.value": "value",
33
- };
34
- const SECRET_EMPTY = {};
35
- (0, secrets_manager_1.stubSecretsManager)();
36
- const secret_1 = require("../../src/aws/runtime/secrets/secret");
37
- describe('secret - test', () => {
38
- afterEach(() => {
39
- sinon.restore();
40
- });
41
- test('getSecret - no secret', async () => {
42
- (0, secrets_manager_1.mockSecret)(null);
43
- await expect(async () => {
44
- await (0, secret_1.withSecret)(SECRET_ID, () => {
45
- // do nothing
46
- });
47
- }).rejects.toThrowError("No secret found!");
48
- });
49
- test('getSecret - empty secret', async () => {
50
- (0, secrets_manager_1.mockSecret)(SECRET_EMPTY);
51
- await (0, secret_1.withSecret)(SECRET_ID, (secret) => {
52
- expect(secret).toEqual(SECRET_EMPTY);
53
- });
54
- });
55
- test('getSecret - no prefix', async () => {
56
- (0, secrets_manager_1.mockSecret)(SECRET_WITH_PREFIX);
57
- await (0, secret_1.withSecret)(SECRET_ID, (secret) => {
58
- expect(secret).toEqual(SECRET_WITH_PREFIX);
59
- });
60
- });
61
- test('getSecret - with prefix', async () => {
62
- (0, secrets_manager_1.mockSecret)(SECRET_WITH_PREFIX);
63
- await (0, secret_1.withSecretAndPrefix)(SECRET_ID, 'prefix', (secret) => {
64
- expect(secret).toEqual({
65
- value: "value",
66
- name: "name",
67
- });
68
- });
69
- });
70
- });
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGJzZWNyZXQudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Rlc3Qvc2VjcmV0cy9kYnNlY3JldC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvRUFBOEU7QUFFOUUsNkNBQStCO0FBRS9CLE1BQU0sU0FBUyxHQUFHLGFBQWEsQ0FBQztBQUNoQyxNQUFNLGtCQUFrQixHQUFHO0lBQ3ZCLGNBQWMsRUFBRyxPQUFPO0lBQ3hCLGFBQWEsRUFBRyxNQUFNO0lBQ3RCLGFBQWEsRUFBRyxPQUFPO0NBQzFCLENBQUM7QUFDRixNQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7QUFFeEIsSUFBQSxvQ0FBa0IsR0FBRSxDQUFDO0FBRXJCLGlFQUFvRztBQUVwRyxRQUFRLENBQUMsZUFBZSxFQUFFLEdBQUcsRUFBRTtJQUMzQixTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ1gsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3BCLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLHVCQUF1QixFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3JDLElBQUEsNEJBQVUsRUFBQyxJQUFJLENBQUMsQ0FBQztRQUVqQixNQUFNLE1BQU0sQ0FBQyxLQUFLLElBQUksRUFBRTtZQUNwQixNQUFNLElBQUEsbUJBQVUsRUFBQyxTQUFTLEVBQUUsR0FBRyxFQUFFO2dCQUM3QixhQUFhO1lBQ2pCLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ2hELENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLDBCQUEwQixFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3hDLElBQUEsNEJBQVUsRUFBQyxZQUFZLENBQUMsQ0FBQztRQUV6QixNQUFNLElBQUEsbUJBQVUsRUFBQyxTQUFTLEVBQUcsQ0FBQyxNQUFxQixFQUFFLEVBQUU7WUFDbkQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLHVCQUF1QixFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3JDLElBQUEsNEJBQVUsRUFBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRS9CLE1BQU0sSUFBQSxtQkFBVSxFQUFDLFNBQVMsRUFBRyxDQUFDLE1BQXFCLEVBQUUsRUFBRTtZQUNuRCxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDL0MsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDLENBQUMsQ0FBQztJQUVILElBQUksQ0FBQyx5QkFBeUIsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN2QyxJQUFBLDRCQUFVLEVBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUUvQixNQUFNLElBQUEsNEJBQW1CLEVBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRyxDQUFDLE1BQXFCLEVBQUUsRUFBRTtZQUN0RSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDO2dCQUNuQixLQUFLLEVBQUUsT0FBTztnQkFDZCxJQUFJLEVBQUUsTUFBTTthQUNmLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBRVAsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7bW9ja1NlY3JldCwgc3R1YlNlY3JldHNNYW5hZ2VyfSBmcm9tIFwiLi4vLi4vc3JjL3Rlc3Qvc2VjcmV0cy1tYW5hZ2VyXCI7XG5cbmltcG9ydCAqIGFzIHNpbm9uIGZyb20gJ3Npbm9uJztcblxuY29uc3QgU0VDUkVUX0lEID0gXCJ0ZXN0X3NlY3JldFwiO1xuY29uc3QgU0VDUkVUX1dJVEhfUFJFRklYID0ge1xuICAgIFwicHJlZml4LnZhbHVlXCIgOiBcInZhbHVlXCIsXG4gICAgXCJwcmVmaXgubmFtZVwiIDogXCJuYW1lXCIsXG4gICAgXCJ3cm9uZy52YWx1ZVwiIDogXCJ2YWx1ZVwiLFxufTtcbmNvbnN0IFNFQ1JFVF9FTVBUWSA9IHt9O1xuXG5zdHViU2VjcmV0c01hbmFnZXIoKTtcblxuaW1wb3J0IHtHZW5lcmljU2VjcmV0LCB3aXRoU2VjcmV0LCB3aXRoU2VjcmV0QW5kUHJlZml4fSBmcm9tIFwiLi4vLi4vc3JjL2F3cy9ydW50aW1lL3NlY3JldHMvc2VjcmV0XCI7XG5cbmRlc2NyaWJlKCdzZWNyZXQgLSB0ZXN0JywgKCkgPT4ge1xuICAgIGFmdGVyRWFjaCgoKSA9PiB7XG4gICAgICAgIHNpbm9uLnJlc3RvcmUoKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2dldFNlY3JldCAtIG5vIHNlY3JldCcsIGFzeW5jICgpID0+IHtcbiAgICAgICAgbW9ja1NlY3JldChudWxsKTtcblxuICAgICAgICBhd2FpdCBleHBlY3QoYXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgYXdhaXQgd2l0aFNlY3JldChTRUNSRVRfSUQsICgpID0+IHtcbiAgICAgICAgICAgICAgICAvLyBkbyBub3RoaW5nXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSkucmVqZWN0cy50b1Rocm93RXJyb3IoXCJObyBzZWNyZXQgZm91bmQhXCIpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnZ2V0U2VjcmV0IC0gZW1wdHkgc2VjcmV0JywgYXN5bmMgKCkgPT4ge1xuICAgICAgICBtb2NrU2VjcmV0KFNFQ1JFVF9FTVBUWSk7XG5cbiAgICAgICAgYXdhaXQgd2l0aFNlY3JldChTRUNSRVRfSUQsICAoc2VjcmV0OiBHZW5lcmljU2VjcmV0KSA9PiB7XG4gICAgICAgICAgICBleHBlY3Qoc2VjcmV0KS50b0VxdWFsKFNFQ1JFVF9FTVBUWSk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnZ2V0U2VjcmV0IC0gbm8gcHJlZml4JywgYXN5bmMgKCkgPT4ge1xuICAgICAgICBtb2NrU2VjcmV0KFNFQ1JFVF9XSVRIX1BSRUZJWCk7XG5cbiAgICAgICAgYXdhaXQgd2l0aFNlY3JldChTRUNSRVRfSUQsICAoc2VjcmV0OiBHZW5lcmljU2VjcmV0KSA9PiB7XG4gICAgICAgICAgICBleHBlY3Qoc2VjcmV0KS50b0VxdWFsKFNFQ1JFVF9XSVRIX1BSRUZJWCk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnZ2V0U2VjcmV0IC0gd2l0aCBwcmVmaXgnLCBhc3luYyAoKSA9PiB7XG4gICAgICAgIG1vY2tTZWNyZXQoU0VDUkVUX1dJVEhfUFJFRklYKTtcblxuICAgICAgICBhd2FpdCB3aXRoU2VjcmV0QW5kUHJlZml4KFNFQ1JFVF9JRCwgJ3ByZWZpeCcsICAoc2VjcmV0OiBHZW5lcmljU2VjcmV0KSA9PiB7XG4gICAgICAgICAgICBleHBlY3Qoc2VjcmV0KS50b0VxdWFsKHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogXCJ2YWx1ZVwiLFxuICAgICAgICAgICAgICAgIG5hbWU6IFwibmFtZVwiLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuXG4gICAgfSk7XG59KTtcbiJdfQ==
@@ -1,124 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const secrets_manager_1 = require("../../src/test/secrets-manager");
27
- const sinon = __importStar(require("sinon"));
28
- const SECRET_WITH_PREFIX = {
29
- "prefix.value": "value",
30
- "prefix.name": "name",
31
- "wrong.value": "value",
32
- "username": "DB_USER",
33
- };
34
- const SECRET_EMPTY = {};
35
- const stubSM = (0, secrets_manager_1.stubSecretsManager)();
36
- const secret_holder_1 = require("../../src/aws/runtime/secrets/secret-holder");
37
- const dbsecret_1 = require("../../src/aws/runtime/secrets/dbsecret");
38
- describe('SecretHolder - tests', () => {
39
- afterEach(() => {
40
- sinon.restore();
41
- sinon.reset();
42
- delete process.env[dbsecret_1.DatabaseEnvironmentKeys.DB_USER];
43
- });
44
- test('get - no secret', async () => {
45
- (0, secrets_manager_1.mockSecret)(null);
46
- const holder = secret_holder_1.SecretHolder.create();
47
- await expect(async () => {
48
- await holder.get();
49
- }).rejects.toThrowError("No secret found!");
50
- });
51
- test('get - empty secret', async () => {
52
- (0, secrets_manager_1.mockSecret)(SECRET_EMPTY);
53
- const holder = secret_holder_1.SecretHolder.create();
54
- const secret = await holder.get();
55
- expect(secret).toEqual(SECRET_EMPTY);
56
- });
57
- test('get - no prefix', async () => {
58
- (0, secrets_manager_1.mockSecret)(SECRET_WITH_PREFIX);
59
- const holder = secret_holder_1.SecretHolder.create();
60
- const secret = await holder.get();
61
- expect(secret).toEqual(SECRET_WITH_PREFIX);
62
- });
63
- test('get - check keys - not found', async () => {
64
- (0, secrets_manager_1.mockSecret)(SECRET_WITH_PREFIX);
65
- const holder = secret_holder_1.SecretHolder.create('', ['not_found']);
66
- await expect(async () => {
67
- await holder.get();
68
- }).rejects.toThrow();
69
- });
70
- test('get - check keys - found', async () => {
71
- (0, secrets_manager_1.mockSecret)(SECRET_WITH_PREFIX);
72
- const holder = secret_holder_1.SecretHolder.create('', ['prefix.value', 'username']);
73
- await holder.get();
74
- });
75
- test('setDatabaseCredentials - no prefix', async () => {
76
- (0, secrets_manager_1.mockSecret)(SECRET_WITH_PREFIX);
77
- const holder = secret_holder_1.SecretHolder.create();
78
- expect(process.env[dbsecret_1.DatabaseEnvironmentKeys.DB_USER]).toBeUndefined();
79
- await holder.setDatabaseCredentials();
80
- expect(process.env[dbsecret_1.DatabaseEnvironmentKeys.DB_USER]).toEqual(SECRET_WITH_PREFIX.username);
81
- });
82
- test('setDatabaseCredentials - with prefix', async () => {
83
- (0, secrets_manager_1.mockSecret)(SECRET_WITH_PREFIX);
84
- const holder = secret_holder_1.SecretHolder.create('prefix');
85
- expect(process.env[dbsecret_1.DatabaseEnvironmentKeys.DB_USER]).toBeUndefined();
86
- await holder.setDatabaseCredentials();
87
- expect(process.env[dbsecret_1.DatabaseEnvironmentKeys.DB_USER]).toEqual(SECRET_WITH_PREFIX.username);
88
- });
89
- test('getSecret - with prefix', async () => {
90
- (0, secrets_manager_1.mockSecret)(SECRET_WITH_PREFIX);
91
- const holder = secret_holder_1.SecretHolder.create('prefix');
92
- const secret = await holder.get();
93
- expect(secret).toEqual({
94
- value: "value",
95
- name: "name",
96
- });
97
- });
98
- test('get - ttl - do not fetch', async () => {
99
- (0, secrets_manager_1.mockSecret)(SECRET_WITH_PREFIX);
100
- const holder = secret_holder_1.SecretHolder.create();
101
- const callCount = stubSM.callCount;
102
- await holder.get();
103
- expect(stubSM.callCount).toEqual(callCount + 1);
104
- // gets cached secret
105
- await holder.get();
106
- expect(stubSM.callCount).toEqual(callCount + 1);
107
- });
108
- test('get - ttl - fetch', async () => {
109
- (0, secrets_manager_1.mockSecret)(SECRET_WITH_PREFIX);
110
- const holder = new secret_holder_1.SecretHolder('', '', [], {
111
- ttl: 1,
112
- });
113
- const callCount = stubSM.callCount;
114
- await holder.get();
115
- expect(stubSM.callCount).toEqual(callCount + 1);
116
- // cache expires, fetches secret again
117
- const start = Date.now();
118
- while (Date.now() < start + 2000)
119
- ;
120
- await holder.get();
121
- expect(stubSM.callCount).toEqual(callCount + 2);
122
- });
123
- });
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjcmV0LWhvbGRlci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdC9zZWNyZXRzL3NlY3JldC1ob2xkZXIudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0VBQThFO0FBRTlFLDZDQUErQjtBQUUvQixNQUFNLGtCQUFrQixHQUFHO0lBQ3ZCLGNBQWMsRUFBRyxPQUFPO0lBQ3hCLGFBQWEsRUFBRyxNQUFNO0lBQ3RCLGFBQWEsRUFBRyxPQUFPO0lBQ3ZCLFVBQVUsRUFBRSxTQUFTO0NBQ3hCLENBQUM7QUFDRixNQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7QUFFeEIsTUFBTSxNQUFNLEdBQUcsSUFBQSxvQ0FBa0IsR0FBRSxDQUFDO0FBRXBDLCtFQUF5RTtBQUN6RSxxRUFBK0U7QUFFL0UsUUFBUSxDQUFDLHNCQUFzQixFQUFFLEdBQUcsRUFBRTtJQUNsQyxTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ1gsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2hCLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNkLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQ0FBdUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4RCxDQUFDLENBQUMsQ0FBQztJQUVILElBQUksQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLElBQUksRUFBRTtRQUMvQixJQUFBLDRCQUFVLEVBQUMsSUFBSSxDQUFDLENBQUM7UUFFakIsTUFBTSxNQUFNLEdBQUcsNEJBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNyQyxNQUFNLE1BQU0sQ0FBQyxLQUFLLElBQUksRUFBRTtZQUNwQixNQUFNLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDaEQsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFJLENB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QUVILE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUM7UUFFbkMsTUFBTSxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDbkIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRWhELHNDQUFzQztRQUN0QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDekIsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsS0FBSyxHQUFDLElBQUk7WUFBQyxDQUFDO1FBRWhDLE1BQU0sTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ25CLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNwRCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHttb2NrU2VjcmV0LCBzdHViU2VjcmV0c01hbmFnZXJ9IGZyb20gXCIuLi8uLi9zcmMvdGVzdC9zZWNyZXRzLW1hbmFnZXJcIjtcblxuaW1wb3J0ICogYXMgc2lub24gZnJvbSAnc2lub24nO1xuXG5jb25zdCBTRUNSRVRfV0lUSF9QUkVGSVggPSB7XG4gICAgXCJwcmVmaXgudmFsdWVcIiA6IFwidmFsdWVcIixcbiAgICBcInByZWZpeC5uYW1lXCIgOiBcIm5hbWVcIixcbiAgICBcIndyb25nLnZhbHVlXCIgOiBcInZhbHVlXCIsXG4gICAgXCJ1c2VybmFtZVwiOiBcIkRCX1VTRVJcIixcbn07XG5jb25zdCBTRUNSRVRfRU1QVFkgPSB7fTtcblxuY29uc3Qgc3R1YlNNID0gc3R1YlNlY3JldHNNYW5hZ2VyKCk7XG5cbmltcG9ydCB7U2VjcmV0SG9sZGVyfSBmcm9tIFwiLi4vLi4vc3JjL2F3cy9ydW50aW1lL3NlY3JldHMvc2VjcmV0LWhvbGRlclwiO1xuaW1wb3J0IHtEYXRhYmFzZUVudmlyb25tZW50S2V5c30gZnJvbSBcIi4uLy4uL3NyYy9hd3MvcnVudGltZS9zZWNyZXRzL2Ric2VjcmV0XCI7XG5cbmRlc2NyaWJlKCdTZWNyZXRIb2xkZXIgLSB0ZXN0cycsICgpID0+IHtcbiAgICBhZnRlckVhY2goKCkgPT4ge1xuICAgICAgICBzaW5vbi5yZXN0b3JlKCk7XG4gICAgICAgIHNpbm9uLnJlc2V0KCk7XG4gICAgICAgIGRlbGV0ZSBwcm9jZXNzLmVudltEYXRhYmFzZUVudmlyb25tZW50S2V5cy5EQl9VU0VSXTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2dldCAtIG5vIHNlY3JldCcsIGFzeW5jICgpID0+IHtcbiAgICAgICAgbW9ja1NlY3JldChudWxsKTtcblxuICAgICAgICBjb25zdCBob2xkZXIgPSBTZWNyZXRIb2xkZXIuY3JlYXRlKCk7XG4gICAgICAgIGF3YWl0IGV4cGVjdChhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICBhd2FpdCBob2xkZXIuZ2V0KCk7XG4gICAgICAgIH0pLnJlamVjdHMudG9UaHJvd0Vycm9yKFwiTm8gc2VjcmV0IGZvdW5kIVwiKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2dldCAtIGVtcHR5IHNlY3JldCcsIGFzeW5jICgpID0+IHtcbiAgICAgICAgbW9ja1NlY3JldChTRUNSRVRfRU1QVFkpO1xuXG4gICAgICAgIGNvbnN0IGhvbGRlciA9IFNlY3JldEhvbGRlci5jcmVhdGUoKTtcbiAgICAgICAgY29uc3Qgc2VjcmV0ID0gYXdhaXQgaG9sZGVyLmdldCgpO1xuXG4gICAgICAgIGV4cGVjdChzZWNyZXQpLnRvRXF1YWwoU0VDUkVUX0VNUFRZKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2dldCAtIG5vIHByZWZpeCcsIGFzeW5jICgpID0+IHtcbiAgICAgICAgbW9ja1NlY3JldChTRUNSRVRfV0lUSF9QUkVGSVgpO1xuXG4gICAgICAgIGNvbnN0IGhvbGRlciA9IFNlY3JldEhvbGRlci5jcmVhdGUoKTtcbiAgICAgICAgY29uc3Qgc2VjcmV0ID0gYXdhaXQgaG9sZGVyLmdldCgpO1xuXG4gICAgICAgIGV4cGVjdChzZWNyZXQpLnRvRXF1YWwoU0VDUkVUX1dJVEhfUFJFRklYKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2dldCAtIGNoZWNrIGtleXMgLSBub3QgZm91bmQnLCBhc3luYyAoKSA9PiB7XG4gICAgICAgIG1vY2tTZWNyZXQoU0VDUkVUX1dJVEhfUFJFRklYKTtcblxuICAgICAgICBjb25zdCBob2xkZXIgPSBTZWNyZXRIb2xkZXIuY3JlYXRlKCcnLCBbJ25vdF9mb3VuZCddKTtcbiAgICAgICAgYXdhaXQgZXhwZWN0KGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgIGF3YWl0IGhvbGRlci5nZXQoKTtcbiAgICAgICAgfSkucmVqZWN0cy50b1Rocm93KCk7XG4gICAgfSk7XG5cbiAgICB0ZXN0KCdnZXQgLSBjaGVjayBrZXlzIC0gZm91bmQnLCBhc3luYyAoKSA9PiB7XG4gICAgICAgIG1vY2tTZWNyZXQoU0VDUkVUX1dJVEhfUFJFRklYKTtcblxuICAgICAgICBjb25zdCBob2xkZXIgPSBTZWNyZXRIb2xkZXIuY3JlYXRlKCcnLCBbJ3ByZWZpeC52YWx1ZScsICd1c2VybmFtZSddKTtcblxuICAgICAgICBhd2FpdCBob2xkZXIuZ2V0KCk7XG4gICAgfSk7XG5cbiAgICB0ZXN0KCdzZXREYXRhYmFzZUNyZWRlbnRpYWxzIC0gbm8gcHJlZml4JywgYXN5bmMoKSA9PiB7XG4gICAgICAgIG1vY2tTZWNyZXQoU0VDUkVUX1dJVEhfUFJFRklYKTtcblxuICAgICAgICBjb25zdCBob2xkZXIgPSBTZWNyZXRIb2xkZXIuY3JlYXRlKCk7XG4gICAgICAgIGV4cGVjdChwcm9jZXNzLmVudltEYXRhYmFzZUVudmlyb25tZW50S2V5cy5EQl9VU0VSXSkudG9CZVVuZGVmaW5lZCgpO1xuXG4gICAgICAgIGF3YWl0IGhvbGRlci5zZXREYXRhYmFzZUNyZWRlbnRpYWxzKCk7XG4gICAgICAgIGV4cGVjdChwcm9jZXNzLmVudltEYXRhYmFzZUVudmlyb25tZW50S2V5cy5EQl9VU0VSXSkudG9FcXVhbChTRUNSRVRfV0lUSF9QUkVGSVgudXNlcm5hbWUpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnc2V0RGF0YWJhc2VDcmVkZW50aWFscyAtIHdpdGggcHJlZml4JywgYXN5bmMoKSA9PiB7XG4gICAgICAgIG1vY2tTZWNyZXQoU0VDUkVUX1dJVEhfUFJFRklYKTtcblxuICAgICAgICBjb25zdCBob2xkZXIgPSBTZWNyZXRIb2xkZXIuY3JlYXRlKCdwcmVmaXgnKTtcbiAgICAgICAgZXhwZWN0KHByb2Nlc3MuZW52W0RhdGFiYXNlRW52aXJvbm1lbnRLZXlzLkRCX1VTRVJdKS50b0JlVW5kZWZpbmVkKCk7XG5cbiAgICAgICAgYXdhaXQgaG9sZGVyLnNldERhdGFiYXNlQ3JlZGVudGlhbHMoKTtcbiAgICAgICAgZXhwZWN0KHByb2Nlc3MuZW52W0RhdGFiYXNlRW52aXJvbm1lbnRLZXlzLkRCX1VTRVJdKS50b0VxdWFsKFNFQ1JFVF9XSVRIX1BSRUZJWC51c2VybmFtZSk7XG4gICAgfSk7XG5cbiAgICB0ZXN0KCdnZXRTZWNyZXQgLSB3aXRoIHByZWZpeCcsIGFzeW5jICgpID0+IHtcbiAgICAgICAgbW9ja1NlY3JldChTRUNSRVRfV0lUSF9QUkVGSVgpO1xuXG4gICAgICAgIGNvbnN0IGhvbGRlciA9IFNlY3JldEhvbGRlci5jcmVhdGUoJ3ByZWZpeCcpO1xuICAgICAgICBjb25zdCBzZWNyZXQgPSBhd2FpdCBob2xkZXIuZ2V0KCk7XG5cbiAgICAgICAgZXhwZWN0KHNlY3JldCkudG9FcXVhbCh7XG4gICAgICAgICAgICB2YWx1ZTogXCJ2YWx1ZVwiLFxuICAgICAgICAgICAgbmFtZTogXCJuYW1lXCIsXG4gICAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnZ2V0IC0gdHRsIC0gZG8gbm90IGZldGNoJywgYXN5bmMgKCkgPT4ge1xuICAgICAgICBtb2NrU2VjcmV0KFNFQ1JFVF9XSVRIX1BSRUZJWCk7XG5cbiAgICAgICAgY29uc3QgaG9sZGVyID0gU2VjcmV0SG9sZGVyLmNyZWF0ZSgpO1xuXG4gICAgICAgIGNvbnN0IGNhbGxDb3VudCA9IHN0dWJTTS5jYWxsQ291bnQ7XG5cbiAgICAgICAgYXdhaXQgaG9sZGVyLmdldCgpO1xuICAgICAgICBleHBlY3Qoc3R1YlNNLmNhbGxDb3VudCkudG9FcXVhbChjYWxsQ291bnQgKyAxKTtcblxuICAgICAgICAvLyBnZXRzIGNhY2hlZCBzZWNyZXRcbiAgICAgICAgYXdhaXQgaG9sZGVyLmdldCgpO1xuICAgICAgICBleHBlY3Qoc3R1YlNNLmNhbGxDb3VudCkudG9FcXVhbChjYWxsQ291bnQgKyAxKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2dldCAtIHR0bCAtIGZldGNoJywgYXN5bmMgKCkgPT4ge1xuICAgICAgICBtb2NrU2VjcmV0KFNFQ1JFVF9XSVRIX1BSRUZJWCk7XG5cbiAgICAgICAgY29uc3QgaG9sZGVyID0gbmV3IFNlY3JldEhvbGRlcignJywgJycsIFtdLCB7XG4gICAgICAgICAgICB0dGw6IDEsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnN0IGNhbGxDb3VudCA9IHN0dWJTTS5jYWxsQ291bnQ7XG5cbiAgICAgICAgYXdhaXQgaG9sZGVyLmdldCgpO1xuICAgICAgICBleHBlY3Qoc3R1YlNNLmNhbGxDb3VudCkudG9FcXVhbChjYWxsQ291bnQgKyAxKTtcblxuICAgICAgICAvLyBjYWNoZSBleHBpcmVzLCBmZXRjaGVzIHNlY3JldCBhZ2FpblxuICAgICAgICBjb25zdCBzdGFydCA9IERhdGUubm93KCk7XG4gICAgICAgIHdoaWxlIChEYXRlLm5vdygpIDwgc3RhcnQrMjAwMCk7XG5cbiAgICAgICAgYXdhaXQgaG9sZGVyLmdldCgpO1xuICAgICAgICBleHBlY3Qoc3R1YlNNLmNhbGxDb3VudCkudG9FcXVhbChjYWxsQ291bnQgKyAyKTtcbiAgICB9KTtcbn0pO1xuIl19
@@ -1,66 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const secrets_manager_1 = require("../../src/test/secrets-manager");
27
- const sinon = __importStar(require("sinon"));
28
- const SECRET_ID = "test_secret";
29
- const SECRET_WITH_PREFIX = {
30
- "prefix.value": "value",
31
- "prefix.name": "name",
32
- "wrong.value": "value",
33
- };
34
- const SECRET_EMPTY = {};
35
- (0, secrets_manager_1.stubSecretsManager)();
36
- const secret_1 = require("../../src/aws/runtime/secrets/secret");
37
- describe('secret - test', () => {
38
- afterEach(() => {
39
- sinon.restore();
40
- });
41
- test('getSecret - no secret', async () => {
42
- (0, secrets_manager_1.mockSecret)(null);
43
- await expect(async () => {
44
- await (0, secret_1.getSecret)(SECRET_ID, '');
45
- }).rejects.toThrowError("No secret found!");
46
- });
47
- test('getSecret - empty secret', async () => {
48
- (0, secrets_manager_1.mockSecret)(SECRET_EMPTY);
49
- const secret = await (0, secret_1.getSecret)(SECRET_ID, '');
50
- expect(secret).toEqual(SECRET_EMPTY);
51
- });
52
- test('getSecret - no prefix', async () => {
53
- (0, secrets_manager_1.mockSecret)(SECRET_WITH_PREFIX);
54
- const secret = await (0, secret_1.getSecret)(SECRET_ID, '');
55
- expect(secret).toEqual(SECRET_WITH_PREFIX);
56
- });
57
- test('getSecret - with prefix', async () => {
58
- (0, secrets_manager_1.mockSecret)(SECRET_WITH_PREFIX);
59
- const secret = await (0, secret_1.getSecret)(SECRET_ID, 'prefix');
60
- expect(secret).toEqual({
61
- value: "value",
62
- name: "name",
63
- });
64
- });
65
- });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjcmV0LnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90ZXN0L3NlY3JldHMvc2VjcmV0LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9FQUE4RTtBQUU5RSw2Q0FBK0I7QUFFL0IsTUFBTSxTQUFTLEdBQUcsYUFBYSxDQUFDO0FBQ2hDLE1BQU0sa0JBQWtCLEdBQUc7SUFDdkIsY0FBYyxFQUFHLE9BQU87SUFDeEIsYUFBYSxFQUFHLE1BQU07SUFDdEIsYUFBYSxFQUFHLE9BQU87Q0FDMUIsQ0FBQztBQUNGLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQztBQUV4QixJQUFBLG9DQUFrQixHQUFFLENBQUM7QUFFckIsaUVBQStEO0FBRS9ELFFBQVEsQ0FBQyxlQUFlLEVBQUUsR0FBRyxFQUFFO0lBQzNCLFNBQVMsQ0FBQyxHQUFHLEVBQUU7UUFDWCxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDcEIsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsdUJBQXVCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDckMsSUFBQSw0QkFBVSxFQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pCLE1BQU0sTUFBTSxDQUFDLEtBQUssSUFBSSxFQUFFO1lBQ3BCLE1BQU0sSUFBQSxrQkFBUyxFQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDaEQsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsMEJBQTBCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDeEMsSUFBQSw0QkFBVSxFQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3pCLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBQSxrQkFBUyxFQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM5QyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3pDLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLHVCQUF1QixFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3JDLElBQUEsNEJBQVUsRUFBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQy9CLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBQSxrQkFBUyxFQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM5QyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDL0MsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMseUJBQXlCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDdkMsSUFBQSw0QkFBVSxFQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDL0IsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFBLGtCQUFTLEVBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3BELE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFDbkIsS0FBSyxFQUFFLE9BQU87WUFDZCxJQUFJLEVBQUUsTUFBTTtTQUNmLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge21vY2tTZWNyZXQsIHN0dWJTZWNyZXRzTWFuYWdlcn0gZnJvbSBcIi4uLy4uL3NyYy90ZXN0L3NlY3JldHMtbWFuYWdlclwiO1xuXG5pbXBvcnQgKiBhcyBzaW5vbiBmcm9tICdzaW5vbic7XG5cbmNvbnN0IFNFQ1JFVF9JRCA9IFwidGVzdF9zZWNyZXRcIjtcbmNvbnN0IFNFQ1JFVF9XSVRIX1BSRUZJWCA9IHtcbiAgICBcInByZWZpeC52YWx1ZVwiIDogXCJ2YWx1ZVwiLFxuICAgIFwicHJlZml4Lm5hbWVcIiA6IFwibmFtZVwiLFxuICAgIFwid3JvbmcudmFsdWVcIiA6IFwidmFsdWVcIixcbn07XG5jb25zdCBTRUNSRVRfRU1QVFkgPSB7fTtcblxuc3R1YlNlY3JldHNNYW5hZ2VyKCk7XG5cbmltcG9ydCB7Z2V0U2VjcmV0fSBmcm9tIFwiLi4vLi4vc3JjL2F3cy9ydW50aW1lL3NlY3JldHMvc2VjcmV0XCI7XG5cbmRlc2NyaWJlKCdzZWNyZXQgLSB0ZXN0JywgKCkgPT4ge1xuICAgIGFmdGVyRWFjaCgoKSA9PiB7XG4gICAgICAgIHNpbm9uLnJlc3RvcmUoKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2dldFNlY3JldCAtIG5vIHNlY3JldCcsIGFzeW5jICgpID0+IHtcbiAgICAgICAgbW9ja1NlY3JldChudWxsKTtcbiAgICAgICAgYXdhaXQgZXhwZWN0KGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgIGF3YWl0IGdldFNlY3JldChTRUNSRVRfSUQsICcnKTtcbiAgICAgICAgfSkucmVqZWN0cy50b1Rocm93RXJyb3IoXCJObyBzZWNyZXQgZm91bmQhXCIpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnZ2V0U2VjcmV0IC0gZW1wdHkgc2VjcmV0JywgYXN5bmMgKCkgPT4ge1xuICAgICAgICBtb2NrU2VjcmV0KFNFQ1JFVF9FTVBUWSk7XG4gICAgICAgIGNvbnN0IHNlY3JldCA9IGF3YWl0IGdldFNlY3JldChTRUNSRVRfSUQsICcnKTtcbiAgICAgICAgZXhwZWN0KHNlY3JldCkudG9FcXVhbChTRUNSRVRfRU1QVFkpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnZ2V0U2VjcmV0IC0gbm8gcHJlZml4JywgYXN5bmMgKCkgPT4ge1xuICAgICAgICBtb2NrU2VjcmV0KFNFQ1JFVF9XSVRIX1BSRUZJWCk7XG4gICAgICAgIGNvbnN0IHNlY3JldCA9IGF3YWl0IGdldFNlY3JldChTRUNSRVRfSUQsICcnKTtcbiAgICAgICAgZXhwZWN0KHNlY3JldCkudG9FcXVhbChTRUNSRVRfV0lUSF9QUkVGSVgpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnZ2V0U2VjcmV0IC0gd2l0aCBwcmVmaXgnLCBhc3luYyAoKSA9PiB7XG4gICAgICAgIG1vY2tTZWNyZXQoU0VDUkVUX1dJVEhfUFJFRklYKTtcbiAgICAgICAgY29uc3Qgc2VjcmV0ID0gYXdhaXQgZ2V0U2VjcmV0KFNFQ1JFVF9JRCwgJ3ByZWZpeCcpO1xuICAgICAgICBleHBlY3Qoc2VjcmV0KS50b0VxdWFsKHtcbiAgICAgICAgICAgIHZhbHVlOiBcInZhbHVlXCIsXG4gICAgICAgICAgICBuYW1lOiBcIm5hbWVcIixcbiAgICAgICAgfSk7XG4gICAgfSk7XG59KTtcbiJdfQ==
@@ -1,87 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const httpserver_1 = require("../../src/test/httpserver");
4
- const http = require("http");
5
- const DEFAULT_PATH = "/";
6
- const PORT = 8091;
7
- const DEFAULT_PROPS = {
8
- "/": () => "",
9
- };
10
- describe('TestHttpServer - test', () => {
11
- async function withServer(fn, props = DEFAULT_PROPS, statusCode = 200) {
12
- const server = new httpserver_1.TestHttpServer();
13
- server.listen(PORT, props, false, statusCode);
14
- try {
15
- await fn(server);
16
- }
17
- finally {
18
- server.close();
19
- }
20
- }
21
- function sendGetRequest(path = DEFAULT_PATH) {
22
- return sendRequest("GET", path);
23
- }
24
- function sendPostRequest(path = DEFAULT_PATH, body) {
25
- return sendRequest("POST", path, body);
26
- }
27
- function sendRequest(method, path, body) {
28
- return new Promise((resolve, reject) => {
29
- const request = http.request({
30
- path,
31
- port: PORT,
32
- method,
33
- }, (response) => {
34
- response.on('data', () => {
35
- // do nothing
36
- });
37
- //the whole response has been received, so we just print it out here
38
- response.on('end', () => {
39
- resolve(response);
40
- });
41
- response.on('error', (error) => {
42
- reject(error);
43
- });
44
- });
45
- if (method === "POST") {
46
- request.write(body);
47
- }
48
- request.end();
49
- });
50
- }
51
- test('no calls', async () => {
52
- await withServer((server) => {
53
- expect(server.getCallCount()).toEqual(0);
54
- });
55
- });
56
- test('one get', async () => {
57
- await withServer(async (server) => {
58
- await sendGetRequest();
59
- expect(server.getCallCount()).toEqual(1);
60
- });
61
- });
62
- test('one get - no MATCH', async () => {
63
- await withServer(async (server) => {
64
- const response = await sendGetRequest("/no-match");
65
- expect(server.getCallCount()).toEqual(1);
66
- expect(server.getRequestBody(0)).toEqual(httpserver_1.ERROR_NO_MATCH);
67
- expect(response.statusCode).toEqual(httpserver_1.ERRORCODE_NOT_FOUND);
68
- });
69
- });
70
- test('get - error 405', async () => {
71
- const ERROR_CODE = 405;
72
- await withServer(async (server) => {
73
- const response = await sendGetRequest();
74
- expect(server.getCallCount()).toEqual(1);
75
- expect(response.statusCode).toEqual(ERROR_CODE);
76
- }, DEFAULT_PROPS, ERROR_CODE);
77
- });
78
- test('one post', async () => {
79
- await withServer(async (server) => {
80
- const testBody = "Testing123!";
81
- await sendPostRequest(DEFAULT_PATH, testBody);
82
- expect(server.getCallCount()).toEqual(1);
83
- expect(server.getRequestBody(0)).toEqual(testBody);
84
- });
85
- });
86
- });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cHNlcnZlci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdC90ZXN0L2h0dHBzZXJ2ZXIudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDBEQUFnSDtBQUVoSCw2QkFBOEI7QUFFOUIsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUFDO0FBQ3pCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQztBQUVsQixNQUFNLGFBQWEsR0FBRztJQUNsQixHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRTtDQUNoQixDQUFDO0FBRUYsUUFBUSxDQUFDLHVCQUF1QixFQUFFLEdBQUcsRUFBRTtJQUNuQyxLQUFLLFVBQVUsVUFBVSxDQUFDLEVBQXNDLEVBQUUsUUFBMEIsYUFBYSxFQUFFLFVBQVUsR0FBRyxHQUFHO1FBQ3ZILE1BQU0sTUFBTSxHQUFHLElBQUksMkJBQWMsRUFBRSxDQUFDO1FBRXBDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFOUMsSUFBSTtZQUNBLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3BCO2dCQUFTO1lBQ04sTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ2xCO0lBQ0wsQ0FBQztJQUVELFNBQVMsY0FBYyxDQUFDLElBQUksR0FBRyxZQUFZO1FBQ3ZDLE9BQU8sV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsU0FBUyxlQUFlLENBQUMsSUFBSSxHQUFHLFlBQVksRUFBRSxJQUFZO1FBQ3RELE9BQU8sV0FBVyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELFNBQVMsV0FBVyxDQUFDLE1BQWMsRUFBRSxJQUFZLEVBQUUsSUFBYTtRQUM1RCxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFF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RSxLQUFLLElBQUksRUFBRTtRQUN4QixNQUFNLFVBQVUsQ0FBQyxLQUFLLEVBQUUsTUFBc0IsRUFBRSxFQUFFO1lBQzlDLE1BQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQztZQUMvQixNQUFNLGVBQWUsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFFOUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6QyxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN2RCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQyxDQUFDO0FBRVAsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1Rlc3RIdHRwU2VydmVyLCBMaXN0ZW5Qcm9wZXJ0aWVzLCBFUlJPUl9OT19NQVRDSCwgRVJST1JDT0RFX05PVF9GT1VORH0gZnJvbSBcIi4uLy4uL3NyYy90ZXN0L2h0dHBzZXJ2ZXJcIjtcbmltcG9ydCB7SW5jb21pbmdNZXNzYWdlfSBmcm9tIFwiaHR0cFwiO1xuaW1wb3J0IGh0dHAgPSByZXF1aXJlKCdodHRwJyk7XG5cbmNvbnN0IERFRkFVTFRfUEFUSCA9IFwiL1wiO1xuY29uc3QgUE9SVCA9IDgwOTE7XG5cbmNvbnN0IERFRkFVTFRfUFJPUFMgPSB7XG4gICAgXCIvXCI6ICgpID0+IFwiXCIsXG59O1xuXG5kZXNjcmliZSgnVGVzdEh0dHBTZXJ2ZXIgLSB0ZXN0JywgKCkgPT4ge1xuICAgIGFzeW5jIGZ1bmN0aW9uIHdpdGhTZXJ2ZXIoZm46ICgoc2VydmVyOiBUZXN0SHR0cFNlcnZlcikgPT4gdm9pZCksIHByb3BzOiBMaXN0ZW5Qcm9wZXJ0aWVzID0gREVGQVVMVF9QUk9QUywgc3RhdHVzQ29kZSA9IDIwMCkge1xuICAgICAgICBjb25zdCBzZXJ2ZXIgPSBuZXcgVGVzdEh0dHBTZXJ2ZXIoKTtcblxuICAgICAgICBzZXJ2ZXIubGlzdGVuKFBPUlQsIHByb3BzLCBmYWxzZSwgc3RhdHVzQ29kZSk7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGF3YWl0IGZuKHNlcnZlcik7XG4gICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICBzZXJ2ZXIuY2xvc2UoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIHNlbmRHZXRSZXF1ZXN0KHBhdGggPSBERUZBVUxUX1BBVEgpOiBQcm9taXNlPEluY29taW5nTWVzc2FnZT4ge1xuICAgICAgICByZXR1cm4gc2VuZFJlcXVlc3QoXCJHRVRcIiwgcGF0aCk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gc2VuZFBvc3RSZXF1ZXN0KHBhdGggPSBERUZBVUxUX1BBVEgsIGJvZHk6IHN0cmluZyk6IFByb21pc2U8SW5jb21pbmdNZXNzYWdlPiB7XG4gICAgICAgIHJldHVybiBzZW5kUmVxdWVzdChcIlBPU1RcIiwgcGF0aCwgYm9keSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gc2VuZFJlcXVlc3QobWV0aG9kOiBzdHJpbmcsIHBhdGg6IHN0cmluZywgYm9keT86IHN0cmluZyk6IFByb21pc2U8SW5jb21pbmdNZXNzYWdlPiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCByZXF1ZXN0ID0gaHR0cC5yZXF1ZXN0KHtcbiAgICAgICAgICAgICAgICBwYXRoLFxuICAgICAgICAgICAgICAgIHBvcnQ6IFBPUlQsXG4gICAgICAgICAgICAgICAgbWV0aG9kLFxuICAgICAgICAgICAgfSwgKHJlc3BvbnNlOiBJbmNvbWluZ01lc3NhZ2UpID0+IHtcbiAgICAgICAgICAgICAgICByZXNwb25zZS5vbignZGF0YScsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gZG8gbm90aGluZ1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgLy90aGUgd2hvbGUgcmVzcG9uc2UgaGFzIGJlZW4gcmVjZWl2ZWQsIHNvIHdlIGp1c3QgcHJpbnQgaXQgb3V0IGhlcmVcbiAgICAgICAgICAgICAgICByZXNwb25zZS5vbignZW5kJywgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKHJlc3BvbnNlKTtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHJlc3BvbnNlLm9uKCdlcnJvcicsIChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycm9yKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBpZiAobWV0aG9kID09PSBcIlBPU1RcIikge1xuICAgICAgICAgICAgICAgIHJlcXVlc3Qud3JpdGUoYm9keSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXF1ZXN0LmVuZCgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB0ZXN0KCdubyBjYWxscycsIGFzeW5jICgpID0+IHtcbiAgICAgICAgYXdhaXQgd2l0aFNlcnZlcigoc2VydmVyOiBUZXN0SHR0cFNlcnZlcikgPT4ge1xuICAgICAgICAgICAgZXhwZWN0KHNlcnZlci5nZXRDYWxsQ291bnQoKSkudG9FcXVhbCgwKTtcbiAgICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICB0ZXN0KCdvbmUgZ2V0JywgYXN5bmMgKCkgPT4ge1xuICAgICAgICBhd2FpdCB3aXRoU2VydmVyKGFzeW5jIChzZXJ2ZXI6IFRlc3RIdHRwU2VydmVyKSA9PiB7XG4gICAgICAgICAgICBhd2FpdCBzZW5kR2V0UmVxdWVzdCgpO1xuXG4gICAgICAgICAgICBleHBlY3Qoc2VydmVyLmdldENhbGxDb3VudCgpKS50b0VxdWFsKDEpO1xuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ29uZSBnZXQgLSBubyBNQVRDSCcsIGFzeW5jICgpID0+IHtcbiAgICAgICAgYXdhaXQgd2l0aFNlcnZlcihhc3luYyAoc2VydmVyOiBUZXN0SHR0cFNlcnZlcikgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBzZW5kR2V0UmVxdWVzdChcIi9uby1tYXRjaFwiKTtcblxuICAgICAgICAgICAgZXhwZWN0KHNlcnZlci5nZXRDYWxsQ291bnQoKSkudG9FcXVhbCgxKTtcbiAgICAgICAgICAgIGV4cGVjdChzZXJ2ZXIuZ2V0UmVxdWVzdEJvZHkoMCkpLnRvRXF1YWwoRVJST1JfTk9fTUFUQ0gpO1xuICAgICAgICAgICAgZXhwZWN0KHJlc3BvbnNlLnN0YXR1c0NvZGUpLnRvRXF1YWwoRVJST1JDT0RFX05PVF9GT1VORCk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnZ2V0IC0gZXJyb3IgNDA1JywgYXN5bmMgKCkgPT4ge1xuICAgICAgICBjb25zdCBFUlJPUl9DT0RFID0gNDA1O1xuXG4gICAgICAgIGF3YWl0IHdpdGhTZXJ2ZXIoYXN5bmMgKHNlcnZlcjogVGVzdEh0dHBTZXJ2ZXIpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgc2VuZEdldFJlcXVlc3QoKTtcblxuICAgICAgICAgICAgZXhwZWN0KHNlcnZlci5nZXRDYWxsQ291bnQoKSkudG9FcXVhbCgxKTtcbiAgICAgICAgICAgIGV4cGVjdChyZXNwb25zZS5zdGF0dXNDb2RlKS50b0VxdWFsKEVSUk9SX0NPREUpO1xuICAgICAgICB9LCBERUZBVUxUX1BST1BTLCBFUlJPUl9DT0RFKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ29uZSBwb3N0JywgYXN5bmMgKCkgPT4ge1xuICAgICAgICBhd2FpdCB3aXRoU2VydmVyKGFzeW5jIChzZXJ2ZXI6IFRlc3RIdHRwU2VydmVyKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0ZXN0Qm9keSA9IFwiVGVzdGluZzEyMyFcIjtcbiAgICAgICAgICAgIGF3YWl0IHNlbmRQb3N0UmVxdWVzdChERUZBVUxUX1BBVEgsIHRlc3RCb2R5KTtcblxuICAgICAgICAgICAgZXhwZWN0KHNlcnZlci5nZXRDYWxsQ291bnQoKSkudG9FcXVhbCgxKTtcbiAgICAgICAgICAgIGV4cGVjdChzZXJ2ZXIuZ2V0UmVxdWVzdEJvZHkoMCkpLnRvRXF1YWwodGVzdEJvZHkpO1xuICAgICAgICB9KTtcbiAgICB9KTtcblxufSk7XG4iXX0=
@@ -1,51 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const moment_1 = __importDefault(require("moment"));
30
- const CommonDateUtils = __importStar(require("../../src/utils/date-utils"));
31
- const ISO = "2022-01-02T01:02:03.004Z";
32
- describe('CommonDateUtilsTest', () => {
33
- test('dateFromIsoString', () => {
34
- const parsed = CommonDateUtils.dateFromIsoString(ISO);
35
- expect(parsed.toISOString()).toEqual(ISO);
36
- });
37
- test('dateFromIsoString fails', () => {
38
- expect(() => CommonDateUtils.dateFromIsoString(ISO + "foobar")).toThrowError();
39
- });
40
- test('countDiffMs', () => {
41
- const start = new Date();
42
- const end = (0, moment_1.default)(start).add(1234, 'milliseconds').toDate();
43
- expect(CommonDateUtils.countDiffMs(start, end)).toEqual(1234);
44
- });
45
- test('countDiffMs', () => {
46
- const start = new Date();
47
- const end = (0, moment_1.default)(start).add(1234, 'seconds').toDate();
48
- expect(CommonDateUtils.countDiffInSeconds(start, end)).toEqual(1234);
49
- });
50
- });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS11dGlscy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdC91dGlscy9kYXRlLXV0aWxzLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG9EQUE0QjtBQUM1Qiw0RUFBOEQ7QUFFOUQsTUFBTSxHQUFHLEdBQUcsMEJBQTBCLENBQUM7QUFFdkMsUUFBUSxDQUFDLHFCQUFxQixFQUFFLEdBQUcsRUFBRTtJQUVqQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxFQUFFO1FBQzNCLE1BQU0sTUFBTSxHQUFHLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN0RCxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlDLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLHlCQUF5QixFQUFFLEdBQUcsRUFBRTtRQUNqQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ25GLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUU7UUFDckIsTUFBTSxLQUFLLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN6QixNQUFNLEdBQUcsR0FBRyxJQUFBLGdCQUFNLEVBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM3RCxNQUFNLENBQUUsZUFBZSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkUsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsRUFBRTtRQUNyQixNQUFNLEtBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3pCLE1BQU0sR0FBRyxHQUFHLElBQUEsZ0JBQU0sRUFBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3hELE1BQU0sQ0FBRSxlQUFlLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFFLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9tZW50IGZyb20gXCJtb21lbnRcIjtcbmltcG9ydCAqIGFzIENvbW1vbkRhdGVVdGlscyBmcm9tIFwiLi4vLi4vc3JjL3V0aWxzL2RhdGUtdXRpbHNcIjtcblxuY29uc3QgSVNPID0gXCIyMDIyLTAxLTAyVDAxOjAyOjAzLjAwNFpcIjtcblxuZGVzY3JpYmUoJ0NvbW1vbkRhdGVVdGlsc1Rlc3QnLCAoKSA9PiB7XG5cbiAgICB0ZXN0KCdkYXRlRnJvbUlzb1N0cmluZycsICgpID0+IHtcbiAgICAgICAgY29uc3QgcGFyc2VkID0gQ29tbW9uRGF0ZVV0aWxzLmRhdGVGcm9tSXNvU3RyaW5nKElTTyk7XG4gICAgICAgIGV4cGVjdChwYXJzZWQudG9JU09TdHJpbmcoKSkudG9FcXVhbChJU08pO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnZGF0ZUZyb21Jc29TdHJpbmcgZmFpbHMnLCAoKSA9PiB7XG4gICAgICAgIGV4cGVjdCgoKSA9PiBDb21tb25EYXRlVXRpbHMuZGF0ZUZyb21Jc29TdHJpbmcoSVNPICsgXCJmb29iYXJcIikpLnRvVGhyb3dFcnJvcigpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnY291bnREaWZmTXMnLCAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gbmV3IERhdGUoKTtcbiAgICAgICAgY29uc3QgZW5kID0gbW9tZW50KHN0YXJ0KS5hZGQoMTIzNCwgJ21pbGxpc2Vjb25kcycpLnRvRGF0ZSgpO1xuICAgICAgICBleHBlY3QgKENvbW1vbkRhdGVVdGlscy5jb3VudERpZmZNcyhzdGFydCwgZW5kKSkudG9FcXVhbCgxMjM0KTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2NvdW50RGlmZk1zJywgKCkgPT4ge1xuICAgICAgICBjb25zdCBzdGFydCA9IG5ldyBEYXRlKCk7XG4gICAgICAgIGNvbnN0IGVuZCA9IG1vbWVudChzdGFydCkuYWRkKDEyMzQsICdzZWNvbmRzJykudG9EYXRlKCk7XG4gICAgICAgIGV4cGVjdCAoQ29tbW9uRGF0ZVV0aWxzLmNvdW50RGlmZkluU2Vjb25kcyhzdGFydCwgZW5kKSkudG9FcXVhbCgxMjM0KTtcbiAgICB9KTtcbn0pO1xuIl19
@@ -1,49 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const asserter_1 = require("../../src/test/asserter");
27
- const Geometry = __importStar(require("../../src/utils/geometry"));
28
- const TAMPERE_WGS84_X = 23.761290078;
29
- const TAMPERE_WGS84_Y = 61.497742570;
30
- const KUOPIO_WGS84_X = 27.688935;
31
- const KUOPIO_WGS84_Y = 62.892983;
32
- const TAMPERE_KUOPIO_DISTANCE_KM = 255.8;
33
- describe('CommonGeometryTest', () => {
34
- test('distanceBetweenWGS84PointsInKm', () => {
35
- asserter_1.Asserter.assertToBeCloseTo(Geometry.distanceBetweenPositionsInKm([TAMPERE_WGS84_X, TAMPERE_WGS84_Y], [KUOPIO_WGS84_X, KUOPIO_WGS84_Y]), TAMPERE_KUOPIO_DISTANCE_KM, 0.5);
36
- console.info(Geometry.distanceBetweenPositionsInKm([TAMPERE_WGS84_X, TAMPERE_WGS84_Y], [KUOPIO_WGS84_X, KUOPIO_WGS84_Y]));
37
- });
38
- test('distanceBetweenWGS84PointsInKm', () => {
39
- asserter_1.Asserter.assertToBeCloseTo(Geometry.distanceBetweenPositionsInM([TAMPERE_WGS84_X, TAMPERE_WGS84_Y], [KUOPIO_WGS84_X, KUOPIO_WGS84_Y]), TAMPERE_KUOPIO_DISTANCE_KM * 1000, 500);
40
- console.info(Geometry.distanceBetweenPositionsInM([TAMPERE_WGS84_X, TAMPERE_WGS84_Y], [KUOPIO_WGS84_X, KUOPIO_WGS84_Y]));
41
- });
42
- test('areDistinctPositions', () => {
43
- expect(Geometry.areDistinctPositions([1, 2], [1, 2])).toBe(false);
44
- expect(Geometry.areDistinctPositions([1.1, 2.2], [1.1, 2.2])).toBe(false);
45
- expect(Geometry.areDistinctPositions([1, 2.1], [1, 2])).toBe(true);
46
- expect(Geometry.areDistinctPositions([1, 2], [1, 2.000000000000001])).toBe(true);
47
- });
48
- });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvbWV0cnkudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Rlc3QvdXRpbHMvZ2VvbWV0cnkudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0RBQWlEO0FBQ2pELG1FQUFxRDtBQUVyRCxNQUFNLGVBQWUsR0FBRyxZQUFZLENBQUM7QUFDckMsTUFBTSxlQUFlLEdBQUcsWUFBWSxDQUFDO0FBRXJDLE1BQU0sY0FBYyxHQUFHLFNBQVMsQ0FBQztBQUNqQyxNQUFNLGNBQWMsR0FBRyxTQUFTLENBQUM7QUFDakMsTUFBTSwwQkFBMEIsR0FBRyxLQUFLLENBQUM7QUFFekMsUUFBUSxDQUFDLG9CQUFvQixFQUFFLEdBQUcsRUFBRTtJQUVoQyxJQUFJLENBQUMsZ0NBQWdDLEVBQUUsR0FBRyxFQUFFO1FBQ3hDLG1CQUFRLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLDRCQUE0QixDQUFDLENBQUMsZUFBZSxFQUFFLGVBQWUsQ0FBQyxFQUFFLENBQUMsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUFDLEVBQUMsMEJBQTBCLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDeEssT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsNEJBQTRCLENBQUMsQ0FBQyxlQUFlLEVBQUUsZUFBZSxDQUFDLEVBQUUsQ0FBQyxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzlILENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLGdDQUFnQyxFQUFFLEdBQUcsRUFBRTtRQUN4QyxtQkFBUSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLGVBQWUsRUFBRSxlQUFlLENBQUMsRUFBRSxDQUFDLGNBQWMsRUFBRSxjQUFjLENBQUMsQ0FBQyxFQUFDLDBCQUEwQixHQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztRQUM1SyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLGVBQWUsRUFBRSxlQUFlLENBQUMsRUFBRSxDQUFDLGNBQWMsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0gsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsR0FBRyxFQUFFO1FBQzlCLE1BQU0sQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvRCxNQUFNLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLENBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxFQUFDLENBQUMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsRUFBQyxHQUFHLENBQUMsRUFBQyxDQUFDLENBQUMsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLEVBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xGLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Fzc2VydGVyfSBmcm9tIFwiLi4vLi4vc3JjL3Rlc3QvYXNzZXJ0ZXJcIjtcbmltcG9ydCAqIGFzIEdlb21ldHJ5IGZyb20gJy4uLy4uL3NyYy91dGlscy9nZW9tZXRyeSc7XG5cbmNvbnN0IFRBTVBFUkVfV0dTODRfWCA9IDIzLjc2MTI5MDA3ODtcbmNvbnN0IFRBTVBFUkVfV0dTODRfWSA9IDYxLjQ5Nzc0MjU3MDtcblxuY29uc3QgS1VPUElPX1dHUzg0X1ggPSAyNy42ODg5MzU7XG5jb25zdCBLVU9QSU9fV0dTODRfWSA9IDYyLjg5Mjk4MztcbmNvbnN0IFRBTVBFUkVfS1VPUElPX0RJU1RBTkNFX0tNID0gMjU1Ljg7XG5cbmRlc2NyaWJlKCdDb21tb25HZW9tZXRyeVRlc3QnLCAoKSA9PiB7XG5cbiAgICB0ZXN0KCdkaXN0YW5jZUJldHdlZW5XR1M4NFBvaW50c0luS20nLCAoKSA9PiB7XG4gICAgICAgIEFzc2VydGVyLmFzc2VydFRvQmVDbG9zZVRvKEdlb21ldHJ5LmRpc3RhbmNlQmV0d2VlblBvc2l0aW9uc0luS20oW1RBTVBFUkVfV0dTODRfWCwgVEFNUEVSRV9XR1M4NF9ZXSwgW0tVT1BJT19XR1M4NF9YLCBLVU9QSU9fV0dTODRfWV0pLFRBTVBFUkVfS1VPUElPX0RJU1RBTkNFX0tNLCAwLjUpO1xuICAgICAgICBjb25zb2xlLmluZm8oR2VvbWV0cnkuZGlzdGFuY2VCZXR3ZWVuUG9zaXRpb25zSW5LbShbVEFNUEVSRV9XR1M4NF9YLCBUQU1QRVJFX1dHUzg0X1ldLCBbS1VPUElPX1dHUzg0X1gsIEtVT1BJT19XR1M4NF9ZXSkpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnZGlzdGFuY2VCZXR3ZWVuV0dTODRQb2ludHNJbkttJywgKCkgPT4ge1xuICAgICAgICBBc3NlcnRlci5hc3NlcnRUb0JlQ2xvc2VUbyhHZW9tZXRyeS5kaXN0YW5jZUJldHdlZW5Qb3NpdGlvbnNJbk0oW1RBTVBFUkVfV0dTODRfWCwgVEFNUEVSRV9XR1M4NF9ZXSwgW0tVT1BJT19XR1M4NF9YLCBLVU9QSU9fV0dTODRfWV0pLFRBTVBFUkVfS1VPUElPX0RJU1RBTkNFX0tNKjEwMDAsIDUwMCk7XG4gICAgICAgIGNvbnNvbGUuaW5mbyhHZW9tZXRyeS5kaXN0YW5jZUJldHdlZW5Qb3NpdGlvbnNJbk0oW1RBTVBFUkVfV0dTODRfWCwgVEFNUEVSRV9XR1M4NF9ZXSwgW0tVT1BJT19XR1M4NF9YLCBLVU9QSU9fV0dTODRfWV0pKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2FyZURpc3RpbmN0UG9zaXRpb25zJywgKCkgPT4ge1xuICAgICAgICBleHBlY3QoR2VvbWV0cnkuYXJlRGlzdGluY3RQb3NpdGlvbnMoWzEsMl0sWzEsMl0pKS50b0JlKGZhbHNlKTtcbiAgICAgICAgZXhwZWN0KEdlb21ldHJ5LmFyZURpc3RpbmN0UG9zaXRpb25zKFsxLjEsMi4yXSxbMS4xLDIuMl0pKS50b0JlKGZhbHNlKTtcbiAgICAgICAgZXhwZWN0KEdlb21ldHJ5LmFyZURpc3RpbmN0UG9zaXRpb25zKFsxLDIuMV0sWzEsMl0pKS50b0JlKHRydWUpO1xuICAgICAgICBleHBlY3QoR2VvbWV0cnkuYXJlRGlzdGluY3RQb3NpdGlvbnMoWzEsMl0sWzEsMi4wMDAwMDAwMDAwMDAwMDFdKSkudG9CZSh0cnVlKTtcbiAgICB9KTtcbn0pO1xuIl19
@@ -1,49 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const CommonUtils = __importStar(require("../../src/utils/utils"));
27
- describe('CommonUtilsTest', () => {
28
- test('bothArraysHasSameValues', () => {
29
- expect(CommonUtils.bothArraysHasSameValues([], [])).toEqual(true);
30
- expect(CommonUtils.bothArraysHasSameValues(['a'], ['a'])).toEqual(true);
31
- expect(CommonUtils.bothArraysHasSameValues(['a'], ['a', 'a'])).toEqual(true);
32
- expect(CommonUtils.bothArraysHasSameValues(['a', 'a'], ['a', 'a'])).toEqual(true);
33
- expect(CommonUtils.bothArraysHasSameValues(null, null)).toEqual(true);
34
- expect(CommonUtils.bothArraysHasSameValues(undefined, undefined)).toEqual(true);
35
- expect(CommonUtils.bothArraysHasSameValues(null, undefined)).toEqual(true);
36
- expect(CommonUtils.bothArraysHasSameValues(['a'], undefined)).toEqual(false);
37
- expect(CommonUtils.bothArraysHasSameValues(['a'], null)).toEqual(false);
38
- /* eslint-enable */
39
- expect(CommonUtils.bothArraysHasSameValues(['a', 'b'], ['a', 'a'])).toEqual(false);
40
- expect(CommonUtils.bothArraysHasSameValues(['a', 'a', 'a'], ['a', 'b', 'c'])).toEqual(false);
41
- const o1 = { a: 1, b: 2 };
42
- const o2 = { a: 1, b: 2 };
43
- // Objects are references to same
44
- expect(CommonUtils.bothArraysHasSameValues([o1], [o1])).toEqual(true);
45
- // Object's are not the same but the contents are the same
46
- expect(CommonUtils.bothArraysHasSameValues([o1], [o2])).toEqual(false);
47
- });
48
- });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Rlc3QvdXRpbHMvdXRpbHMudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsbUVBQXFEO0FBRXJELFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLEVBQUU7SUFFN0IsSUFBSSxDQUFDLHlCQUF5QixFQUFFLEdBQUcsRUFBRTtRQUNqQyxNQUFNLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsRSxNQUFNLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sQ0FBQyxXQUFXLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdFLE1BQU0sQ0FBQyxXQUFXLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVsRixNQUFNLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0RSxNQUFNLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoRixNQUFNLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzRSxNQUFNLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0UsTUFBTSxDQUFDLFdBQVcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hFLG1CQUFtQjtRQUNuQixNQUFNLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkYsTUFBTSxDQUFDLFdBQVcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFN0YsTUFBTSxFQUFFLEdBQUcsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUMsQ0FBQztRQUN4QixNQUFNLEVBQUUsR0FBRyxFQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQyxDQUFDO1FBQ3hCLGlDQUFpQztRQUNqQyxNQUFNLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RFLDBEQUEwRDtRQUMxRCxNQUFNLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTNFLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBDb21tb25VdGlscyBmcm9tIFwiLi4vLi4vc3JjL3V0aWxzL3V0aWxzXCI7XG5cbmRlc2NyaWJlKCdDb21tb25VdGlsc1Rlc3QnLCAoKSA9PiB7XG5cbiAgICB0ZXN0KCdib3RoQXJyYXlzSGFzU2FtZVZhbHVlcycsICgpID0+IHtcbiAgICAgICAgZXhwZWN0KENvbW1vblV0aWxzLmJvdGhBcnJheXNIYXNTYW1lVmFsdWVzKFtdLCBbXSkpLnRvRXF1YWwodHJ1ZSk7XG4gICAgICAgIGV4cGVjdChDb21tb25VdGlscy5ib3RoQXJyYXlzSGFzU2FtZVZhbHVlcyhbJ2EnXSwgWydhJ10pKS50b0VxdWFsKHRydWUpO1xuICAgICAgICBleHBlY3QoQ29tbW9uVXRpbHMuYm90aEFycmF5c0hhc1NhbWVWYWx1ZXMoWydhJ10sIFsnYScsICdhJ10pKS50b0VxdWFsKHRydWUpO1xuICAgICAgICBleHBlY3QoQ29tbW9uVXRpbHMuYm90aEFycmF5c0hhc1NhbWVWYWx1ZXMoWydhJywgJ2EnXSwgWydhJywgJ2EnXSkpLnRvRXF1YWwodHJ1ZSk7XG5cbiAgICAgICAgZXhwZWN0KENvbW1vblV0aWxzLmJvdGhBcnJheXNIYXNTYW1lVmFsdWVzKG51bGwsIG51bGwpKS50b0VxdWFsKHRydWUpO1xuICAgICAgICBleHBlY3QoQ29tbW9uVXRpbHMuYm90aEFycmF5c0hhc1NhbWVWYWx1ZXModW5kZWZpbmVkLCB1bmRlZmluZWQpKS50b0VxdWFsKHRydWUpO1xuICAgICAgICBleHBlY3QoQ29tbW9uVXRpbHMuYm90aEFycmF5c0hhc1NhbWVWYWx1ZXMobnVsbCwgdW5kZWZpbmVkKSkudG9FcXVhbCh0cnVlKTtcbiAgICAgICAgZXhwZWN0KENvbW1vblV0aWxzLmJvdGhBcnJheXNIYXNTYW1lVmFsdWVzKFsnYSddLCB1bmRlZmluZWQpKS50b0VxdWFsKGZhbHNlKTtcbiAgICAgICAgZXhwZWN0KENvbW1vblV0aWxzLmJvdGhBcnJheXNIYXNTYW1lVmFsdWVzKFsnYSddLCBudWxsKSkudG9FcXVhbChmYWxzZSk7XG4gICAgICAgIC8qIGVzbGludC1lbmFibGUgKi9cbiAgICAgICAgZXhwZWN0KENvbW1vblV0aWxzLmJvdGhBcnJheXNIYXNTYW1lVmFsdWVzKFsnYScsICdiJ10sIFsnYScsICdhJ10pKS50b0VxdWFsKGZhbHNlKTtcbiAgICAgICAgZXhwZWN0KENvbW1vblV0aWxzLmJvdGhBcnJheXNIYXNTYW1lVmFsdWVzKFsnYScsICdhJywgJ2EnXSwgWydhJywgJ2InLCAnYyddKSkudG9FcXVhbChmYWxzZSk7XG5cbiAgICAgICAgY29uc3QgbzEgPSB7YTogMSwgYjogMn07XG4gICAgICAgIGNvbnN0IG8yID0ge2E6IDEsIGI6IDJ9O1xuICAgICAgICAvLyBPYmplY3RzIGFyZSByZWZlcmVuY2VzIHRvIHNhbWVcbiAgICAgICAgZXhwZWN0KENvbW1vblV0aWxzLmJvdGhBcnJheXNIYXNTYW1lVmFsdWVzKFtvMV0sIFtvMV0pKS50b0VxdWFsKHRydWUpO1xuICAgICAgICAvLyBPYmplY3QncyBhcmUgbm90IHRoZSBzYW1lIGJ1dCB0aGUgY29udGVudHMgYXJlIHRoZSBzYW1lXG4gICAgICAgIGV4cGVjdChDb21tb25VdGlscy5ib3RoQXJyYXlzSGFzU2FtZVZhbHVlcyhbbzFdLCBbbzJdKSkudG9FcXVhbChmYWxzZSk7XG5cbiAgICB9KTtcbn0pO1xuIl19