@futdevpro/nts-dynamo 1.9.45 → 1.10.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/.github/workflows/main.yml +57 -3
- package/build/_collections/archive.util.spec.d.ts +2 -0
- package/build/_collections/archive.util.spec.d.ts.map +1 -0
- package/build/_collections/archive.util.spec.js +21 -0
- package/build/_collections/archive.util.spec.js.map +1 -0
- package/build/_models/control-models/api-call-params.control-model.spec.d.ts +2 -0
- package/build/_models/control-models/api-call-params.control-model.spec.d.ts.map +1 -0
- package/build/_models/control-models/api-call-params.control-model.spec.js +82 -0
- package/build/_models/control-models/api-call-params.control-model.spec.js.map +1 -0
- package/build/_models/control-models/app-params.control-model.spec.d.ts +2 -0
- package/build/_models/control-models/app-params.control-model.spec.d.ts.map +1 -0
- package/build/_models/control-models/app-params.control-model.spec.js +59 -0
- package/build/_models/control-models/app-params.control-model.spec.js.map +1 -0
- package/build/_models/control-models/app-system-controls.control-model.spec.d.ts +2 -0
- package/build/_models/control-models/app-system-controls.control-model.spec.d.ts.map +1 -0
- package/build/_models/control-models/app-system-controls.control-model.spec.js +26 -0
- package/build/_models/control-models/app-system-controls.control-model.spec.js.map +1 -0
- package/build/_models/control-models/endpoint-params.control-model.d.ts +1 -1
- package/build/_models/control-models/endpoint-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/endpoint-params.control-model.js +3 -3
- package/build/_models/control-models/endpoint-params.control-model.js.map +1 -1
- package/build/_models/control-models/http-settings.control-model.spec.d.ts +2 -0
- package/build/_models/control-models/http-settings.control-model.spec.d.ts.map +1 -0
- package/build/_models/control-models/http-settings.control-model.spec.js +62 -0
- package/build/_models/control-models/http-settings.control-model.spec.js.map +1 -0
- package/build/_models/control-models/system-control.control-model.spec.d.ts +2 -0
- package/build/_models/control-models/system-control.control-model.spec.d.ts.map +1 -0
- package/build/_models/control-models/system-control.control-model.spec.js +24 -0
- package/build/_models/control-models/system-control.control-model.spec.js.map +1 -0
- package/build/_models/interfaces/global-service-settings.interface.d.ts +3 -3
- package/build/_models/interfaces/global-service-settings.interface.d.ts.map +1 -1
- package/build/_modules/custom-data/custom-data.controller.d.ts.map +1 -1
- package/build/_modules/custom-data/custom-data.controller.js +3 -3
- package/build/_modules/custom-data/custom-data.controller.js.map +1 -1
- package/build/_modules/custom-data/custom-data.data-service.d.ts +1 -1
- package/build/_modules/custom-data/custom-data.data-service.d.ts.map +1 -1
- package/build/_modules/custom-data/custom-data.data-service.js +3 -3
- package/build/_modules/custom-data/custom-data.data-service.js.map +1 -1
- package/build/_modules/mock/app-params.mock.spec.d.ts +2 -0
- package/build/_modules/mock/app-params.mock.spec.d.ts.map +1 -0
- package/build/_modules/mock/app-params.mock.spec.js +19 -0
- package/build/_modules/mock/app-params.mock.spec.js.map +1 -0
- package/build/_modules/mock/auth-service.mock.spec.d.ts +2 -0
- package/build/_modules/mock/auth-service.mock.spec.d.ts.map +1 -0
- package/build/_modules/mock/auth-service.mock.spec.js +40 -0
- package/build/_modules/mock/auth-service.mock.spec.js.map +1 -0
- package/build/_modules/mock/controller.mock.spec.d.ts +2 -0
- package/build/_modules/mock/controller.mock.spec.d.ts.map +1 -0
- package/build/_modules/mock/controller.mock.spec.js +23 -0
- package/build/_modules/mock/controller.mock.spec.js.map +1 -0
- package/build/_modules/mock/data-model.mock.d.ts +2 -2
- package/build/_modules/mock/data-model.mock.d.ts.map +1 -1
- package/build/_modules/mock/data-model.mock.js +21 -21
- package/build/_modules/mock/data-model.mock.js.map +1 -1
- package/build/_modules/mock/data-model.mock.spec.d.ts +2 -0
- package/build/_modules/mock/data-model.mock.spec.d.ts.map +1 -0
- package/build/_modules/mock/data-model.mock.spec.js +99 -0
- package/build/_modules/mock/data-model.mock.spec.js.map +1 -0
- package/build/_modules/mock/email-service-collection.mock.spec.d.ts +2 -0
- package/build/_modules/mock/email-service-collection.mock.spec.d.ts.map +1 -0
- package/build/_modules/mock/email-service-collection.mock.spec.js +21 -0
- package/build/_modules/mock/email-service-collection.mock.spec.js.map +1 -0
- package/build/_modules/mock/email-service.mock.spec.d.ts +2 -0
- package/build/_modules/mock/email-service.mock.spec.d.ts.map +1 -0
- package/build/_modules/mock/email-service.mock.spec.js +14 -0
- package/build/_modules/mock/email-service.mock.spec.js.map +1 -0
- package/build/_modules/mock/socket-client.mock.js +2 -2
- package/build/_modules/mock/socket-client.mock.spec.d.ts +2 -0
- package/build/_modules/mock/socket-client.mock.spec.d.ts.map +1 -0
- package/build/_modules/mock/socket-client.mock.spec.js +32 -0
- package/build/_modules/mock/socket-client.mock.spec.js.map +1 -0
- package/build/_modules/mock/socket-server.mock.d.ts +1 -1
- package/build/_modules/mock/socket-server.mock.d.ts.map +1 -1
- package/build/_modules/mock/socket-server.mock.spec.d.ts +2 -0
- package/build/_modules/mock/socket-server.mock.spec.d.ts.map +1 -0
- package/build/_modules/mock/socket-server.mock.spec.js +36 -0
- package/build/_modules/mock/socket-server.mock.spec.js.map +1 -0
- package/build/_modules/socket/_models/socket-client-service-params.control-model.spec.d.ts +2 -0
- package/build/_modules/socket/_models/socket-client-service-params.control-model.spec.d.ts.map +1 -0
- package/build/_modules/socket/_models/socket-client-service-params.control-model.spec.js +22 -0
- package/build/_modules/socket/_models/socket-client-service-params.control-model.spec.js.map +1 -0
- package/build/_modules/socket/_models/socket-server-service-params.control-model.spec.d.ts +2 -0
- package/build/_modules/socket/_models/socket-server-service-params.control-model.spec.d.ts.map +1 -0
- package/build/_modules/socket/_models/socket-server-service-params.control-model.spec.js +29 -0
- package/build/_modules/socket/_models/socket-server-service-params.control-model.spec.js.map +1 -0
- package/build/_modules/socket/_services/socket-server.service.d.ts +1 -1
- package/build/_modules/socket/_services/socket-server.service.d.ts.map +1 -1
- package/build/_modules/socket/_services/socket-server.service.js +1 -1
- package/build/_modules/socket/_services/socket-server.service.js.map +1 -1
- package/build/_modules/socket/_services/socket-server.service.spec.js +1 -1
- package/build/_modules/socket/_services/socket-server.service.spec.js.map +1 -1
- package/build/_modules/usage/usage.controller.d.ts.map +1 -1
- package/build/_modules/usage/usage.controller.js +6 -4
- package/build/_modules/usage/usage.controller.js.map +1 -1
- package/build/_modules/usage/usage.data-service.d.ts +4 -4
- package/build/_modules/usage/usage.data-service.d.ts.map +1 -1
- package/build/_modules/usage/usage.data-service.js +2 -2
- package/build/_modules/usage/usage.data-service.js.map +1 -1
- package/build/_services/base/archive-data.service.d.ts +1 -1
- package/build/_services/base/archive-data.service.d.ts.map +1 -1
- package/build/_services/base/archive-data.service.js.map +1 -1
- package/build/_services/base/data.service.d.ts +7 -7
- package/build/_services/base/data.service.d.ts.map +1 -1
- package/build/_services/base/data.service.js +22 -9
- package/build/_services/base/data.service.js.map +1 -1
- package/build/_services/base/db.service.d.ts +3 -3
- package/build/_services/base/db.service.d.ts.map +1 -1
- package/build/_services/base/db.service.js +23 -14
- package/build/_services/base/db.service.js.map +1 -1
- package/build/_services/base/singleton.service-base.d.ts.map +1 -1
- package/build/_services/base/singleton.service-base.js.map +1 -1
- package/build/_services/core/api.service.d.ts +1 -1
- package/build/_services/core/api.service.d.ts.map +1 -1
- package/build/_services/core/api.service.js +5 -5
- package/build/_services/core/api.service.js.map +1 -1
- package/build/_services/core/api.service.spec.d.ts +2 -0
- package/build/_services/core/api.service.spec.d.ts.map +1 -0
- package/build/_services/core/api.service.spec.js +75 -0
- package/build/_services/core/api.service.spec.js.map +1 -0
- package/build/_services/core/email.service.d.ts +6 -6
- package/build/_services/core/email.service.d.ts.map +1 -1
- package/build/_services/core/email.service.js.map +1 -1
- package/build/_services/core/email.service.spec.d.ts +2 -0
- package/build/_services/core/email.service.spec.d.ts.map +1 -0
- package/build/_services/core/email.service.spec.js +77 -0
- package/build/_services/core/email.service.spec.js.map +1 -0
- package/build/_services/core/global.service.d.ts +2 -2
- package/build/_services/core/global.service.d.ts.map +1 -1
- package/build/_services/core/global.service.js +3 -2
- package/build/_services/core/global.service.js.map +1 -1
- package/build/_services/route/controller.service.d.ts +3 -3
- package/build/_services/route/controller.service.d.ts.map +1 -1
- package/build/_services/route/controller.service.js +2 -2
- package/build/_services/route/controller.service.js.map +1 -1
- package/build/_services/route/controller.service.spec.d.ts +2 -0
- package/build/_services/route/controller.service.spec.d.ts.map +1 -0
- package/build/_services/route/controller.service.spec.js +48 -0
- package/build/_services/route/controller.service.spec.js.map +1 -0
- package/build/_services/route/routing-module.service.spec.d.ts +2 -0
- package/build/_services/route/routing-module.service.spec.d.ts.map +1 -0
- package/build/_services/route/routing-module.service.spec.js +65 -0
- package/build/_services/route/routing-module.service.spec.js.map +1 -0
- package/build/_services/server/app.server.d.ts +5 -5
- package/build/_services/server/app.server.d.ts.map +1 -1
- package/build/_services/server/app.server.js +9 -7
- package/build/_services/server/app.server.js.map +1 -1
- package/package.json +8 -8
- package/spec/support/jasmine.json +8 -0
- package/src/_collections/archive.util.spec.ts +22 -0
- package/src/_models/control-models/api-call-params.control-model.spec.ts +94 -0
- package/src/_models/control-models/app-params.control-model.spec.ts +69 -0
- package/src/_models/control-models/app-system-controls.control-model.spec.ts +31 -0
- package/src/_models/control-models/endpoint-params.control-model.ts +7 -6
- package/src/_models/control-models/http-settings.control-model.spec.ts +66 -0
- package/src/_models/control-models/system-control.control-model.spec.ts +27 -0
- package/src/_models/interfaces/global-service-settings.interface.ts +3 -3
- package/src/_modules/custom-data/custom-data.controller.ts +6 -6
- package/src/_modules/custom-data/custom-data.data-service.ts +4 -3
- package/src/_modules/mock/app-params.mock.spec.ts +21 -0
- package/src/_modules/mock/auth-service.mock.spec.ts +47 -0
- package/src/_modules/mock/controller.mock.spec.ts +26 -0
- package/src/_modules/mock/data-model.mock.spec.ts +109 -0
- package/src/_modules/mock/data-model.mock.ts +23 -23
- package/src/_modules/mock/email-service-collection.mock.spec.ts +24 -0
- package/src/_modules/mock/email-service.mock.spec.ts +17 -0
- package/src/_modules/mock/socket-client.mock.spec.ts +40 -0
- package/src/_modules/mock/socket-client.mock.ts +4 -4
- package/src/_modules/mock/socket-server.mock.spec.ts +44 -0
- package/src/_modules/mock/socket-server.mock.ts +5 -5
- package/src/_modules/socket/_models/socket-client-service-params.control-model.spec.ts +30 -0
- package/src/_modules/socket/_models/socket-server-service-params.control-model.spec.ts +33 -0
- package/src/_modules/socket/_services/socket-server.service.spec.ts +1 -1
- package/src/_modules/socket/_services/socket-server.service.ts +2 -2
- package/src/_modules/test/get-test-routing-module.util.ts +2 -2
- package/src/_modules/usage/usage.controller.ts +10 -8
- package/src/_modules/usage/usage.data-service.ts +10 -7
- package/src/_services/base/archive-data.service.ts +2 -2
- package/src/_services/base/data.service.ts +100 -76
- package/src/_services/base/db.service.ts +77 -55
- package/src/_services/base/singleton.service-base.ts +0 -2
- package/src/_services/core/api.service.spec.ts +96 -0
- package/src/_services/core/api.service.ts +7 -7
- package/src/_services/core/email.service.spec.ts +93 -0
- package/src/_services/core/email.service.ts +9 -11
- package/src/_services/core/global.service.ts +19 -16
- package/src/_services/route/controller.service.spec.ts +52 -0
- package/src/_services/route/controller.service.ts +5 -6
- package/src/_services/route/routing-module.service.spec.ts +81 -0
- package/src/_services/server/app.server.ts +26 -24
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
|
|
2
|
+
import {
|
|
3
|
+
Dependency_Mock, dependency_mock_DataParams, Dependent_Mock, dependent_mock_DataParams
|
|
4
|
+
} from './data-model.mock';
|
|
5
|
+
|
|
6
|
+
describe('Dependency_Mock', () => {
|
|
7
|
+
it('should create an instance with default values', () => {
|
|
8
|
+
const instance = new Dependency_Mock();
|
|
9
|
+
|
|
10
|
+
expect(instance).toBeTruthy();
|
|
11
|
+
expect(instance.string).toBeUndefined();
|
|
12
|
+
expect(instance.number).toBeUndefined();
|
|
13
|
+
expect(instance.date).toBeUndefined();
|
|
14
|
+
expect(instance.boolean).toBeUndefined();
|
|
15
|
+
expect(instance.array).toBeUndefined();
|
|
16
|
+
expect(instance.object).toBeUndefined();
|
|
17
|
+
expect(instance.objectArray).toBeUndefined();
|
|
18
|
+
expect(instance.objectArrayArray).toBeUndefined();
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
it('should create an instance with provided values', () => {
|
|
22
|
+
const mockData: Dependency_Mock = {
|
|
23
|
+
string: 'test',
|
|
24
|
+
number: 42,
|
|
25
|
+
date: new Date(),
|
|
26
|
+
boolean: true,
|
|
27
|
+
array: [ 'a', 'b' ],
|
|
28
|
+
object: { key: 'value' },
|
|
29
|
+
objectArray: [{ key: 'value' }],
|
|
30
|
+
objectArrayArray: [[{ key: 'value' }]],
|
|
31
|
+
};
|
|
32
|
+
const instance = new Dependency_Mock(mockData);
|
|
33
|
+
|
|
34
|
+
expect(instance).toEqual(jasmine.objectContaining(mockData));
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
xdescribe('DyFM_DataModel_Params for Dependency_Mock', () => {
|
|
39
|
+
it('should have correct dataName and properties', () => {
|
|
40
|
+
expect(dependency_mock_DataParams.dataName).toBe('dependencyMock');
|
|
41
|
+
expect(dependency_mock_DataParams.properties).toEqual({
|
|
42
|
+
string: { type: 'string' },
|
|
43
|
+
number: { type: 'number' },
|
|
44
|
+
date: { type: 'Date' },
|
|
45
|
+
boolean: { type: 'boolean' },
|
|
46
|
+
array: { type: 'string[]' },
|
|
47
|
+
object: { type: 'any' },
|
|
48
|
+
objectArray: { type: 'any[]' },
|
|
49
|
+
objectArrayArray: { type: 'any[][]' },
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
describe('Dependent_Mock', () => {
|
|
55
|
+
it('should create an instance with default values', () => {
|
|
56
|
+
const instance = new Dependent_Mock();
|
|
57
|
+
|
|
58
|
+
expect(instance).toBeTruthy();
|
|
59
|
+
expect(instance.dependencyId).toBeUndefined();
|
|
60
|
+
expect(instance.string).toBeUndefined();
|
|
61
|
+
expect(instance.number).toBeUndefined();
|
|
62
|
+
expect(instance.date).toBeUndefined();
|
|
63
|
+
expect(instance.boolean).toBeUndefined();
|
|
64
|
+
expect(instance.array).toBeUndefined();
|
|
65
|
+
expect(instance.object).toBeUndefined();
|
|
66
|
+
expect(instance.objectArray).toBeUndefined();
|
|
67
|
+
expect(instance.objectArrayArray).toBeUndefined();
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
it('should create an instance with provided values', () => {
|
|
71
|
+
const mockData: Dependent_Mock = {
|
|
72
|
+
dependencyId: 'dep123',
|
|
73
|
+
string: 'test',
|
|
74
|
+
number: 42,
|
|
75
|
+
date: new Date(),
|
|
76
|
+
boolean: true,
|
|
77
|
+
array: [ 'a', 'b' ],
|
|
78
|
+
object: { key: 'value' },
|
|
79
|
+
objectArray: [{ key: 'value' }],
|
|
80
|
+
objectArrayArray: [[{ key: 'value' }]],
|
|
81
|
+
};
|
|
82
|
+
const instance = new Dependent_Mock(mockData);
|
|
83
|
+
|
|
84
|
+
expect(instance).toEqual(jasmine.objectContaining(mockData));
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
xdescribe('DyFM_DataModel_Params for Dependent_Mock', () => {
|
|
89
|
+
it('should have correct dataName and properties', () => {
|
|
90
|
+
expect(dependent_mock_DataParams.dataName).toBe('dependentMock');
|
|
91
|
+
expect(dependent_mock_DataParams.properties).toEqual({
|
|
92
|
+
dependencyId: {
|
|
93
|
+
type: 'string',
|
|
94
|
+
unique: true,
|
|
95
|
+
required: true,
|
|
96
|
+
isDependencyHook: true,
|
|
97
|
+
dependencyDataName: dependency_mock_DataParams.dataName,
|
|
98
|
+
},
|
|
99
|
+
string: { type: 'string' },
|
|
100
|
+
number: { type: 'number' },
|
|
101
|
+
date: { type: 'Date' },
|
|
102
|
+
boolean: { type: 'boolean' },
|
|
103
|
+
array: { type: 'string[]' },
|
|
104
|
+
object: { type: 'any' },
|
|
105
|
+
objectArray: { type: 'any[]' },
|
|
106
|
+
objectArrayArray: { type: 'any[][]' },
|
|
107
|
+
});
|
|
108
|
+
});
|
|
109
|
+
});
|
|
@@ -22,18 +22,18 @@ export class Dependency_Mock extends DyFM_Metadata {
|
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
export const dependency_mock_DataParams = new DyFM_DataModel_Params({
|
|
25
|
+
export const dependency_mock_DataParams = new DyFM_DataModel_Params<Dependency_Mock>({
|
|
26
26
|
dataName: 'dependencyMock',
|
|
27
|
-
properties:
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
27
|
+
properties: {
|
|
28
|
+
string: { type: 'string' },
|
|
29
|
+
number: { type: 'number' },
|
|
30
|
+
date: { type: 'Date' },
|
|
31
|
+
boolean: { type: 'boolean' },
|
|
32
|
+
array: { type: 'string[]' },
|
|
33
|
+
object: { type: 'any' },
|
|
34
|
+
objectArray: { type: 'any[]' },
|
|
35
|
+
objectArrayArray: { type: 'any[][]' },
|
|
36
|
+
},
|
|
37
37
|
});
|
|
38
38
|
|
|
39
39
|
////////////////////////////////////////////////////////////////////
|
|
@@ -63,21 +63,21 @@ export class Dependent_Mock extends DyFM_Metadata {
|
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
-
export const dependent_mock_DataParams = new DyFM_DataModel_Params({
|
|
66
|
+
export const dependent_mock_DataParams = new DyFM_DataModel_Params<Dependent_Mock>({
|
|
67
67
|
dataName: 'dependentMock',
|
|
68
|
-
properties:
|
|
69
|
-
|
|
68
|
+
properties: {
|
|
69
|
+
dependencyId: { type: 'string',
|
|
70
70
|
unique: true, required: true,
|
|
71
71
|
isDependencyHook: true,
|
|
72
72
|
dependencyDataName: dependency_mock_DataParams.dataName,
|
|
73
73
|
},
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
74
|
+
string: { type: 'string' },
|
|
75
|
+
number: { type: 'number' },
|
|
76
|
+
date: { type: 'Date' },
|
|
77
|
+
boolean: { type: 'boolean' },
|
|
78
|
+
array: { type: 'string[]' },
|
|
79
|
+
object: { type: 'any' },
|
|
80
|
+
objectArray: { type: 'any[]' },
|
|
81
|
+
objectArrayArray: { type: 'any[][]' },
|
|
82
|
+
},
|
|
83
83
|
});
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
|
|
2
|
+
import { EmailServiceCollection_Mock } from './email-service-collection.mock';
|
|
3
|
+
import { EmailService_Mock } from './email-service.mock';
|
|
4
|
+
|
|
5
|
+
describe('EmailServiceCollection_Mock', () => {
|
|
6
|
+
let emailServiceCollectionMock: EmailServiceCollection_Mock;
|
|
7
|
+
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
emailServiceCollectionMock = EmailServiceCollection_Mock.getInstance();
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
it('should create an instance of EmailServiceCollection_Mock', () => {
|
|
13
|
+
expect(emailServiceCollectionMock).toBeTruthy();
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
it('should return a singleton instance', () => {
|
|
17
|
+
const anotherInstance = EmailServiceCollection_Mock.getInstance();
|
|
18
|
+
expect(emailServiceCollectionMock).toBe(anotherInstance);
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
it('should have a test property of type EmailService_Mock', () => {
|
|
22
|
+
expect(emailServiceCollectionMock.test).toBeInstanceOf(EmailService_Mock);
|
|
23
|
+
});
|
|
24
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
|
|
2
|
+
import {
|
|
3
|
+
DyNTS_EmailService
|
|
4
|
+
} from '../../_services/core/email.service';
|
|
5
|
+
import { EmailService_Mock } from './email-service.mock';
|
|
6
|
+
|
|
7
|
+
describe('EmailService_Mock', () => {
|
|
8
|
+
let emailServiceMock: EmailService_Mock;
|
|
9
|
+
|
|
10
|
+
beforeEach(() => {
|
|
11
|
+
emailServiceMock = new EmailService_Mock();
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('should be an instance of DyNTS_EmailService', () => {
|
|
15
|
+
expect(emailServiceMock instanceof DyNTS_EmailService).toBeTrue();
|
|
16
|
+
});
|
|
17
|
+
});
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
|
|
2
|
+
import { DyFM_SocketEvent, DyFM_SocketEvent_Key } from '@futdevpro/fsm-dynamo/socket';
|
|
3
|
+
|
|
4
|
+
import {
|
|
5
|
+
DyNTS_SocketClientService_Params
|
|
6
|
+
} from '../socket/_models/socket-client-service-params.control-model';
|
|
7
|
+
import { SocketClient_Mock } from './socket-client.mock';
|
|
8
|
+
|
|
9
|
+
describe('SocketClient_Mock', () => {
|
|
10
|
+
let socketClientMock: SocketClient_Mock;
|
|
11
|
+
|
|
12
|
+
beforeEach(() => {
|
|
13
|
+
socketClientMock = SocketClient_Mock.getInstance();
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
it('should create an instance of SocketClient_Mock', () => {
|
|
17
|
+
expect(socketClientMock).toBeTruthy();
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
it('should return the correct incoming events', () => {
|
|
21
|
+
const events = socketClientMock.getIncomingEvents();
|
|
22
|
+
|
|
23
|
+
expect(events.length).toBe(1);
|
|
24
|
+
expect(events[0]).toEqual(jasmine.any(DyFM_SocketEvent));
|
|
25
|
+
expect(events[0].name).toBe('connect');
|
|
26
|
+
expect(events[0].eventKey).toBe(DyFM_SocketEvent_Key.connect);
|
|
27
|
+
expect(events[0].tasks.length).toBe(1);
|
|
28
|
+
expect(events[0].tasks[0]).toEqual(jasmine.any(Function));
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
it('should return the correct parameters', () => {
|
|
32
|
+
const params = socketClientMock.getParams();
|
|
33
|
+
|
|
34
|
+
expect(params).toEqual(jasmine.any(DyNTS_SocketClientService_Params));
|
|
35
|
+
expect(params.service).toBe('-test-socket-target-');
|
|
36
|
+
expect(params.name).toBe('socket-client-mock');
|
|
37
|
+
expect(params.port).toBe(30303);
|
|
38
|
+
expect(params.socketOptions.reconnection).toBeTrue();
|
|
39
|
+
});
|
|
40
|
+
});
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
|
|
2
2
|
import { DyFM_SocketEvent, DyFM_SocketEvent_Key } from '@futdevpro/fsm-dynamo/socket';
|
|
3
3
|
|
|
4
|
-
import {
|
|
5
|
-
DyNTS_SocketClientService_Params
|
|
4
|
+
import {
|
|
5
|
+
DyNTS_SocketClientService_Params
|
|
6
6
|
} from '../socket/_models/socket-client-service-params.control-model';
|
|
7
7
|
import { DyNTS_SocketClient_ServiceBase } from '../socket/_services/socket-client.service';
|
|
8
8
|
|
|
@@ -24,8 +24,8 @@ export class SocketClient_Mock extends DyNTS_SocketClient_ServiceBase {
|
|
|
24
24
|
tasks: [
|
|
25
25
|
async (content: any, issuer: string) => {
|
|
26
26
|
console.log('SocketClient_Mock: connect event received');
|
|
27
|
-
}
|
|
28
|
-
]
|
|
27
|
+
},
|
|
28
|
+
],
|
|
29
29
|
}),
|
|
30
30
|
];
|
|
31
31
|
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
|
|
2
|
+
import {
|
|
3
|
+
DyNTS_SocketServerService_Params
|
|
4
|
+
} from '../socket/_models/socket-server-service-params.control-model';
|
|
5
|
+
import { DyNTS_SocketServer_Mock } from './socket-server.mock';
|
|
6
|
+
|
|
7
|
+
describe('DyNTS_SocketServer_Mock', () => {
|
|
8
|
+
let socketServerMock: DyNTS_SocketServer_Mock;
|
|
9
|
+
|
|
10
|
+
beforeEach(() => {
|
|
11
|
+
socketServerMock = DyNTS_SocketServer_Mock.getInstance();
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('should return an instance of DyNTS_SocketServer_Mock', () => {
|
|
15
|
+
expect(socketServerMock).toBeInstanceOf(DyNTS_SocketServer_Mock);
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
it('should return correct service parameters', () => {
|
|
19
|
+
const params = socketServerMock.getServiceParams();
|
|
20
|
+
|
|
21
|
+
expect(params).toBeInstanceOf(DyNTS_SocketServerService_Params);
|
|
22
|
+
expect(params.name).toBe('test');
|
|
23
|
+
expect(params.port).toBe(9393);
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
it('should return an empty array for incoming events', () => {
|
|
27
|
+
const events = socketServerMock.getIncomingEvents();
|
|
28
|
+
|
|
29
|
+
expect(events).toEqual([]);
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
/* it('should return correct presence from subscription event content', async () => {
|
|
33
|
+
const mockSocketSubscription = { issuerId: 'testIssuerId' };
|
|
34
|
+
const mockSocket = {} as Socket;
|
|
35
|
+
|
|
36
|
+
const presence = await socketServerMock.getPresenceFromSubscriptionEventContent(
|
|
37
|
+
mockSocketSubscription, mockSocket);
|
|
38
|
+
|
|
39
|
+
expect(presence).toBeInstanceOf(DyNTS_SocketPresence);
|
|
40
|
+
expect(presence.issuerLocalId).toBe('testIssuerId');
|
|
41
|
+
expect(presence.sockets).toEqual([ mockSocket ]);
|
|
42
|
+
expect(presence.issuer).toBe('ISSUER socketServer_Mock');
|
|
43
|
+
}); */
|
|
44
|
+
});
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Socket } from 'socket.io';
|
|
2
1
|
import { DyFM_SocketEvent } from '@futdevpro/fsm-dynamo/socket';
|
|
2
|
+
import { Socket } from 'socket.io';
|
|
3
3
|
|
|
4
|
-
import {
|
|
5
|
-
DyNTS_SocketPresence
|
|
4
|
+
import {
|
|
5
|
+
DyNTS_SocketPresence
|
|
6
6
|
} from '../socket/_models/socket-presence.control-model';
|
|
7
|
-
import {
|
|
8
|
-
DyNTS_SocketServerService_Params
|
|
7
|
+
import {
|
|
8
|
+
DyNTS_SocketServerService_Params
|
|
9
9
|
} from '../socket/_models/socket-server-service-params.control-model';
|
|
10
10
|
import { DyNTS_SocketServerService } from '../socket/_services/socket-server.service';
|
|
11
11
|
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
|
|
2
|
+
import { DyFM_Log } from '@futdevpro/fsm-dynamo';
|
|
3
|
+
import { DyNTS_SocketClientService_Params } from './socket-client-service-params.control-model';
|
|
4
|
+
|
|
5
|
+
describe('DyNTS_SocketClientService_Params', () => {
|
|
6
|
+
it('should create an instance with default address', () => {
|
|
7
|
+
const params = new DyNTS_SocketClientService_Params({});
|
|
8
|
+
|
|
9
|
+
expect(params).toBeTruthy();
|
|
10
|
+
expect(params.address).toBe('ws://localhost');
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
it('should log information on creation', () => {
|
|
14
|
+
spyOn(DyFM_Log, 'H_info');
|
|
15
|
+
|
|
16
|
+
const params = new DyNTS_SocketClientService_Params({});
|
|
17
|
+
|
|
18
|
+
expect(DyFM_Log.H_info).toHaveBeenCalledWith(
|
|
19
|
+
'DyNTS_SocketClientService_Params (test this with custom address!)',
|
|
20
|
+
'ws://localhost'
|
|
21
|
+
);
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
xit('should allow overriding the address', () => {
|
|
25
|
+
const customAddress = 'ws://custom-address';
|
|
26
|
+
const params = new DyNTS_SocketClientService_Params({ address: customAddress });
|
|
27
|
+
|
|
28
|
+
expect(params.address).toBe(customAddress);
|
|
29
|
+
});
|
|
30
|
+
});
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
|
|
2
|
+
import { DyNTS_global_settings } from '../../../_collections/global-settings.const';
|
|
3
|
+
import { DyNTS_SocketSecurity } from '../_enums/socket-security.enum';
|
|
4
|
+
import { DyNTS_SocketServerService_Params } from './socket-server-service-params.control-model';
|
|
5
|
+
|
|
6
|
+
describe('DyNTS_SocketServerService_Params', () => {
|
|
7
|
+
it('should create an instance with provided values', () => {
|
|
8
|
+
const params = {
|
|
9
|
+
name: 'TestSocket',
|
|
10
|
+
port: 8080,
|
|
11
|
+
security: DyNTS_SocketSecurity.secure,
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
const instance = new DyNTS_SocketServerService_Params(params);
|
|
15
|
+
|
|
16
|
+
expect(instance.name).toBe('TestSocket');
|
|
17
|
+
expect(instance.port).toBe(8080);
|
|
18
|
+
expect(instance.security).toBe(DyNTS_SocketSecurity.secure);
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
it('should use default security if not provided', () => {
|
|
22
|
+
const params = {
|
|
23
|
+
name: 'TestSocket',
|
|
24
|
+
port: 8080,
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
const instance = new DyNTS_SocketServerService_Params(params);
|
|
28
|
+
|
|
29
|
+
expect(instance.name).toBe('TestSocket');
|
|
30
|
+
expect(instance.port).toBe(8080);
|
|
31
|
+
expect(instance.security).toBe(DyNTS_global_settings.defaultSocketSecurity);
|
|
32
|
+
});
|
|
33
|
+
});
|
|
@@ -4,7 +4,7 @@ import { DyNTS_SocketServer_Mock } from '../../mock/socket-server.mock';
|
|
|
4
4
|
|
|
5
5
|
describe('DyNTS_SocketServerService', () => {
|
|
6
6
|
it('should create an instance', () => {
|
|
7
|
-
expect(
|
|
7
|
+
expect(DyNTS_SocketServer_Mock.getInstance()).toBeTruthy();
|
|
8
8
|
});
|
|
9
9
|
});
|
|
10
10
|
|
|
@@ -64,7 +64,7 @@ export abstract class DyNTS_SocketServerService<
|
|
|
64
64
|
`We encountered an unhandled Socket Server Error, ` +
|
|
65
65
|
`\nplease contact the responsible development team.`;
|
|
66
66
|
|
|
67
|
-
constructor(){
|
|
67
|
+
protected constructor(){
|
|
68
68
|
super();
|
|
69
69
|
|
|
70
70
|
this.asyncConstructor().catch((error: any) => {
|
|
@@ -222,7 +222,7 @@ export abstract class DyNTS_SocketServerService<
|
|
|
222
222
|
}));
|
|
223
223
|
}
|
|
224
224
|
|
|
225
|
-
this.subscriptionEvent.
|
|
225
|
+
this.subscriptionEvent.name = this.params.name;
|
|
226
226
|
} else {
|
|
227
227
|
DyFM_Log.error(
|
|
228
228
|
'getPresenceFromSubscriptionEventContent is not set',
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
|
|
2
2
|
import { DyFM_testModule_settings } from '@futdevpro/fsm-dynamo/test';
|
|
3
3
|
import { DyNTS_RouteSecurity } from '../../_enums/route-security.enum';
|
|
4
|
-
import {
|
|
5
|
-
DyNTS_RoutingModule_Settings
|
|
4
|
+
import {
|
|
5
|
+
DyNTS_RoutingModule_Settings
|
|
6
6
|
} from '../../_models/interfaces/routing-module-settings.interface';
|
|
7
7
|
import { DyNTS_RoutingModule } from '../../_services/route/routing-module.service';
|
|
8
8
|
import { DyNTS_Test_Controller } from './test.controller';
|
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
import { Request, Response } from 'express';
|
|
3
3
|
|
|
4
4
|
import { DyFM_RelativeDate } from '@futdevpro/fsm-dynamo';
|
|
5
|
-
import {
|
|
6
|
-
DyFM_usageModule_settings, DyFM_UsageSession
|
|
5
|
+
import {
|
|
6
|
+
DyFM_usageModule_settings, DyFM_UsageSession
|
|
7
7
|
} from '@futdevpro/fsm-dynamo/usage';
|
|
8
8
|
|
|
9
9
|
import { DyNTS_HttpCallType } from '../../_enums/http/http-call-type.enum';
|
|
10
|
+
import {
|
|
11
|
+
DyNTS_Endpoint_Params
|
|
12
|
+
} from '../../_models/control-models/endpoint-params.control-model';
|
|
10
13
|
import { DyNTS_AuthService } from '../../_services/core/auth.service';
|
|
11
|
-
import { DyNTS_Controller } from '../../_services/route/controller.service';
|
|
12
14
|
import { DyNTS_GlobalService } from '../../_services/core/global.service';
|
|
13
|
-
import {
|
|
14
|
-
DyNTS_Endpoint_Params
|
|
15
|
-
} from '../../_models/control-models/endpoint-params.control-model';
|
|
15
|
+
import { DyNTS_Controller } from '../../_services/route/controller.service';
|
|
16
16
|
import { DyNTS_Usage_DataService } from './usage.data-service';
|
|
17
17
|
|
|
18
18
|
export class DyNTS_Usage_Controller extends DyNTS_Controller {
|
|
@@ -106,10 +106,12 @@ export class DyNTS_Usage_Controller extends DyNTS_Controller {
|
|
|
106
106
|
endpoint: DyFM_usageModule_settings.endPoints.getUsageData,
|
|
107
107
|
preProcesses: [ this.authService.authenticate_tokenPerm_accUsageData ],
|
|
108
108
|
tasks: [
|
|
109
|
-
async (req: Request, res: Response): Promise<void> => {
|
|
109
|
+
async (req: Request, res: Response, issuer: string): Promise<void> => {
|
|
110
110
|
const range: DyFM_RelativeDate = req.params.range as DyFM_RelativeDate;
|
|
111
111
|
|
|
112
|
-
const usageService = new DyNTS_Usage_DataService(
|
|
112
|
+
const usageService = new DyNTS_Usage_DataService({
|
|
113
|
+
issuer: issuer,
|
|
114
|
+
});
|
|
113
115
|
|
|
114
116
|
await usageService.getUsage(range);
|
|
115
117
|
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
|
|
2
|
+
import { DyFM_Error, DyFM_RelativeDate, DyFM_Time } from '@futdevpro/fsm-dynamo';
|
|
3
|
+
import {
|
|
4
|
+
DyFM_DailyUsageData,
|
|
5
|
+
DyFM_UsageData,
|
|
6
|
+
DyFM_UsageSession, DyFM_usageSession_dataParams
|
|
7
|
+
} from '@futdevpro/fsm-dynamo/usage';
|
|
2
8
|
import { Request } from 'express';
|
|
3
|
-
import { DyFM_Error, DyFM_Time, DyFM_RelativeDate } from '@futdevpro/fsm-dynamo';
|
|
4
|
-
import { DyFM_UsageSession, DyFM_usageSession_dataParams, DyFM_UsageData,
|
|
5
|
-
DyFM_DailyUsageData } from '@futdevpro/fsm-dynamo/usage';
|
|
6
9
|
|
|
7
10
|
import { DyNTS_DataService } from '../../_services/base/data.service';
|
|
8
11
|
import { DyNTS_Shared } from '../../_services/shared.static-service';
|
|
@@ -12,18 +15,18 @@ export class DyNTS_Usage_DataService extends DyNTS_DataService<DyFM_UsageSession
|
|
|
12
15
|
simplifiedDailyUsage: DyFM_DailyUsageData[] = [];
|
|
13
16
|
|
|
14
17
|
constructor(
|
|
15
|
-
set
|
|
18
|
+
set: {
|
|
16
19
|
usageSession?: DyFM_UsageSession,
|
|
17
20
|
usageData?: DyFM_UsageData[],
|
|
18
|
-
issuer
|
|
21
|
+
issuer: string,
|
|
19
22
|
}
|
|
20
23
|
) {
|
|
21
24
|
super(
|
|
22
25
|
new DyFM_UsageSession(set?.usageSession),
|
|
23
26
|
DyFM_usageSession_dataParams,
|
|
24
|
-
set
|
|
27
|
+
set.issuer
|
|
25
28
|
);
|
|
26
|
-
this.usageData = set?.usageData
|
|
29
|
+
this.usageData = set?.usageData ?? [];
|
|
27
30
|
}
|
|
28
31
|
|
|
29
32
|
getLocationDataFromRequest(req: Request): void {
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
DyFM_DataModel_Params,
|
|
4
4
|
DyFM_DBFilterSimple,
|
|
5
5
|
DyFM_Error,
|
|
6
|
-
DyFM_Metadata
|
|
6
|
+
DyFM_Metadata
|
|
7
7
|
} from '@futdevpro/fsm-dynamo';
|
|
8
8
|
|
|
9
9
|
import { DyNTS_getArchivedDBName } from '../../_collections/archive.util';
|
|
@@ -28,7 +28,7 @@ export class DyNTS_ArchiveDataService<T extends DyFM_Metadata> extends DyNTS_Dat
|
|
|
28
28
|
/**
|
|
29
29
|
* DB data prams will be used to connect to usable dbService on GlobalService
|
|
30
30
|
*/
|
|
31
|
-
dataParams: DyFM_DataModel_Params
|
|
31
|
+
dataParams: DyFM_DataModel_Params<T>,
|
|
32
32
|
/**
|
|
33
33
|
* Initial set for issuer to be able to follow the issuer's activity
|
|
34
34
|
*/
|