@tomei/sso 0.62.0 → 0.64.0-dev.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 (177) hide show
  1. package/.commitlintrc.json +22 -22
  2. package/.gitlab-ci.yml +16 -16
  3. package/.husky/commit-msg +9 -15
  4. package/.husky/pre-commit +7 -7
  5. package/.prettierrc +4 -4
  6. package/Jenkinsfile +57 -57
  7. package/README.md +23 -23
  8. package/__tests__/unit/components/group/group.spec.ts +79 -79
  9. package/__tests__/unit/components/group-object-privilege/group-object-privilege.spec.ts +88 -88
  10. package/__tests__/unit/components/group-privilege/group-privilege.spec.ts +68 -68
  11. package/__tests__/unit/components/group-reporting-user/group-reporting-user.spec.ts +66 -66
  12. package/__tests__/unit/components/group-system-access/group-system-access.spec.ts +83 -83
  13. package/__tests__/unit/components/login-user/l.spec.ts +746 -746
  14. package/__tests__/unit/components/login-user/login.spec.ts +1164 -1164
  15. package/__tests__/unit/components/password-hash/password-hash.service.spec.ts +31 -31
  16. package/__tests__/unit/components/system/system.spec.ts +254 -254
  17. package/__tests__/unit/components/system-privilege/system-privilege.spec.ts +83 -83
  18. package/__tests__/unit/components/user-group/user-group.spec.ts +86 -86
  19. package/__tests__/unit/components/user-object-privilege/user-object-privilege.spec.ts +78 -78
  20. package/__tests__/unit/components/user-privilege/user-privilege.spec.ts +72 -72
  21. package/__tests__/unit/components/user-system-access/user-system-access.spec.ts +89 -89
  22. package/__tests__/unit/redis-client/redis.service.spec.ts +23 -23
  23. package/__tests__/unit/session/session.service.spec.ts +47 -47
  24. package/__tests__/unit/system-privilege/system-privilage.spec.ts +91 -91
  25. package/create-sso-user.sql +39 -39
  26. package/dist/__tests__/unit/components/group-object-privilege/group-object-privilege.spec.js +1 -1
  27. package/dist/__tests__/unit/components/group-object-privilege/group-object-privilege.spec.js.map +1 -1
  28. package/dist/__tests__/unit/components/group-privilege/group-privilege.spec.js +2 -2
  29. package/dist/__tests__/unit/components/group-privilege/group-privilege.spec.js.map +1 -1
  30. package/dist/__tests__/unit/components/group-privilege/group-privilege.test.d.ts +1 -0
  31. package/dist/__tests__/unit/components/group-privilege/group-privilege.test.js +71 -0
  32. package/dist/__tests__/unit/components/group-privilege/group-privilege.test.js.map +1 -0
  33. package/dist/__tests__/unit/components/group-reporting-user/group-reporting-user.spec.js +2 -2
  34. package/dist/__tests__/unit/components/group-reporting-user/group-reporting-user.spec.js.map +1 -1
  35. package/dist/__tests__/unit/components/login-user/login-user.spec.d.ts +0 -0
  36. package/dist/__tests__/unit/components/login-user/login-user.spec.js +6 -0
  37. package/dist/__tests__/unit/components/login-user/login-user.spec.js.map +1 -0
  38. package/dist/__tests__/unit/components/system/system.spec.js +4 -4
  39. package/dist/__tests__/unit/components/system/system.spec.js.map +1 -1
  40. package/dist/__tests__/unit/session/session.service.spec.js +2 -2
  41. package/dist/__tests__/unit/session/session.service.spec.js.map +1 -1
  42. package/dist/src/components/login-history/index.d.ts +1 -0
  43. package/dist/src/components/login-history/index.js +1 -0
  44. package/dist/src/components/login-history/index.js.map +1 -1
  45. package/dist/src/components/login-history/login-history.repository.d.ts +2 -2
  46. package/dist/src/components/login-history/login-history.repository.js.map +1 -1
  47. package/dist/src/components/login-user/interfaces/user-info.interface.d.ts +1 -0
  48. package/dist/src/components/login-user/login-user.js +1 -0
  49. package/dist/src/components/login-user/login-user.js.map +1 -1
  50. package/dist/src/components/login-user/user.d.ts +28 -3
  51. package/dist/src/components/login-user/user.js +363 -25
  52. package/dist/src/components/login-user/user.js.map +1 -1
  53. package/dist/src/components/user-system-access/user-system-access.js +1 -1
  54. package/dist/src/components/user-system-access/user-system-access.js.map +1 -1
  55. package/dist/src/models/login-history.entity.d.ts +2 -2
  56. package/dist/src/models/login-history.entity.js +13 -13
  57. package/dist/src/models/login-history.entity.js.map +1 -1
  58. package/dist/src/models/user.entity.d.ts +1 -0
  59. package/dist/src/models/user.entity.js +8 -0
  60. package/dist/src/models/user.entity.js.map +1 -1
  61. package/dist/tsconfig.tsbuildinfo +1 -1
  62. package/eslint.config.mjs +58 -58
  63. package/jest.config.js +14 -14
  64. package/migrations/20240314080602-create-user-table.js +124 -124
  65. package/migrations/20240314080603-create-user-group-table.js +85 -85
  66. package/migrations/20240314080604-create-user-user-group-table.js +55 -55
  67. package/migrations/20240314080605-create-login-history-table.js +53 -53
  68. package/migrations/20240527064925-create-system-table.js +78 -78
  69. package/migrations/20240527064926-create-system-privilege-table.js +71 -71
  70. package/migrations/20240527065342-create-group-table.js +93 -93
  71. package/migrations/20240527065633-create-group-reporting-user-table.js +76 -76
  72. package/migrations/20240528011551-create-group-system-access-table.js +72 -72
  73. package/migrations/20240528023018-user-system-access-table.js +75 -75
  74. package/migrations/20240528032229-user-privilege-table.js +76 -76
  75. package/migrations/20240528063003-create-group-privilege-table.js +76 -76
  76. package/migrations/20240528063051-create-group-object-privilege-table.js +84 -84
  77. package/migrations/20240528063107-create-user-object-privilege-table.js +84 -84
  78. package/migrations/20240528063108-create-api-key-table.js +85 -85
  79. package/migrations/20241104104802-create-building-table.js +95 -95
  80. package/migrations/20250108091132-add-area-manager-user-id-to-building-table.js +14 -14
  81. package/migrations/20250108091133-add-passcode-to-user-table.js +36 -36
  82. package/migrations/20250210115636-create-user-reporting-hierarchy.js +76 -76
  83. package/migrations/20250326043818-crate-user-password-history.js +42 -42
  84. package/migrations/20250610070720-added-MFBypassYN-to-sso-user.js +30 -0
  85. package/migrations/20250805085707-add-bulk-approval-code-to-sso-user.js +29 -0
  86. package/package.json +87 -90
  87. package/sampledotenv +7 -7
  88. package/src/components/login-history/index.ts +1 -0
  89. package/src/components/login-history/login-history.repository.ts +4 -4
  90. package/src/components/login-history/login-history.ts +124 -0
  91. package/src/components/login-user/interfaces/user-info.interface.ts +1 -0
  92. package/src/components/login-user/login-user.ts +1 -0
  93. package/src/components/login-user/user.ts +441 -27
  94. package/src/components/user-system-access/user-system-access.ts +1 -1
  95. package/src/interfaces/login-history-search-attr.interface.ts +8 -0
  96. package/src/interfaces/login-history.interface.ts +11 -0
  97. package/src/models/login-history.entity.ts +2 -2
  98. package/src/models/user.entity.ts +7 -0
  99. package/tsconfig.build.json +5 -5
  100. package/tsconfig.json +23 -23
  101. package/coverage/clover.xml +0 -1452
  102. package/coverage/coverage-final.json +0 -47
  103. package/coverage/lcov-report/base.css +0 -224
  104. package/coverage/lcov-report/block-navigation.js +0 -87
  105. package/coverage/lcov-report/components/group/group.repository.ts.html +0 -118
  106. package/coverage/lcov-report/components/group/group.ts.html +0 -328
  107. package/coverage/lcov-report/components/group/index.html +0 -131
  108. package/coverage/lcov-report/components/group-object-privilege/group-object-privilege.repository.ts.html +0 -118
  109. package/coverage/lcov-report/components/group-object-privilege/group-object-privilege.ts.html +0 -322
  110. package/coverage/lcov-report/components/group-object-privilege/index.html +0 -131
  111. package/coverage/lcov-report/components/group-privilege/group-privilege.repository.ts.html +0 -118
  112. package/coverage/lcov-report/components/group-privilege/group-privilege.ts.html +0 -304
  113. package/coverage/lcov-report/components/group-privilege/index.html +0 -131
  114. package/coverage/lcov-report/components/group-reporting-user/group-reporting-user.repository.ts.html +0 -118
  115. package/coverage/lcov-report/components/group-reporting-user/group-reporting-user.ts.html +0 -328
  116. package/coverage/lcov-report/components/group-reporting-user/index.html +0 -131
  117. package/coverage/lcov-report/components/group-system-access/group-system-access.repository.ts.html +0 -118
  118. package/coverage/lcov-report/components/group-system-access/group-system-access.ts.html +0 -310
  119. package/coverage/lcov-report/components/group-system-access/index.html +0 -131
  120. package/coverage/lcov-report/components/login-history/index.html +0 -116
  121. package/coverage/lcov-report/components/login-history/login-history.repository.ts.html +0 -118
  122. package/coverage/lcov-report/components/login-user/index.html +0 -131
  123. package/coverage/lcov-report/components/login-user/login-user.ts.html +0 -5008
  124. package/coverage/lcov-report/components/login-user/user.repository.ts.html +0 -118
  125. package/coverage/lcov-report/components/password-hash/index.html +0 -116
  126. package/coverage/lcov-report/components/password-hash/password-hash.service.ts.html +0 -127
  127. package/coverage/lcov-report/components/system/index.html +0 -131
  128. package/coverage/lcov-report/components/system/system.repository.ts.html +0 -118
  129. package/coverage/lcov-report/components/system/system.ts.html +0 -910
  130. package/coverage/lcov-report/components/system-privilege/index.html +0 -131
  131. package/coverage/lcov-report/components/system-privilege/system-privilege.repository.ts.html +0 -121
  132. package/coverage/lcov-report/components/system-privilege/system-privilege.ts.html +0 -391
  133. package/coverage/lcov-report/components/user-group/index.html +0 -131
  134. package/coverage/lcov-report/components/user-group/user-group.repository.ts.html +0 -118
  135. package/coverage/lcov-report/components/user-group/user-group.ts.html +0 -355
  136. package/coverage/lcov-report/components/user-object-privilege/index.html +0 -131
  137. package/coverage/lcov-report/components/user-object-privilege/user-object-privilege.repository.ts.html +0 -118
  138. package/coverage/lcov-report/components/user-object-privilege/user-object-privilege.ts.html +0 -313
  139. package/coverage/lcov-report/components/user-privilege/index.html +0 -131
  140. package/coverage/lcov-report/components/user-privilege/user-privilege.repository.ts.html +0 -118
  141. package/coverage/lcov-report/components/user-privilege/user-privilege.ts.html +0 -307
  142. package/coverage/lcov-report/components/user-system-access/index.html +0 -131
  143. package/coverage/lcov-report/components/user-system-access/user-system-access.repository.ts.html +0 -118
  144. package/coverage/lcov-report/components/user-system-access/user-system-access.ts.html +0 -313
  145. package/coverage/lcov-report/enum/group-type.enum.ts.html +0 -109
  146. package/coverage/lcov-report/enum/index.html +0 -161
  147. package/coverage/lcov-report/enum/index.ts.html +0 -94
  148. package/coverage/lcov-report/enum/user-status.enum.ts.html +0 -106
  149. package/coverage/lcov-report/enum/yn.enum.ts.html +0 -97
  150. package/coverage/lcov-report/favicon.png +0 -0
  151. package/coverage/lcov-report/index.html +0 -371
  152. package/coverage/lcov-report/models/group-object-privilege.entity.ts.html +0 -334
  153. package/coverage/lcov-report/models/group-privilege.entity.ts.html +0 -316
  154. package/coverage/lcov-report/models/group-reporting-user.entity.ts.html +0 -340
  155. package/coverage/lcov-report/models/group-system-access.entity.ts.html +0 -325
  156. package/coverage/lcov-report/models/group.entity.ts.html +0 -436
  157. package/coverage/lcov-report/models/index.html +0 -311
  158. package/coverage/lcov-report/models/login-history.entity.ts.html +0 -253
  159. package/coverage/lcov-report/models/staff.entity.ts.html +0 -412
  160. package/coverage/lcov-report/models/system-privilege.entity.ts.html +0 -355
  161. package/coverage/lcov-report/models/system.entity.ts.html +0 -424
  162. package/coverage/lcov-report/models/user-group.entity.ts.html +0 -355
  163. package/coverage/lcov-report/models/user-object-privilege.entity.ts.html +0 -331
  164. package/coverage/lcov-report/models/user-privilege.entity.ts.html +0 -316
  165. package/coverage/lcov-report/models/user-system-access.entity.ts.html +0 -316
  166. package/coverage/lcov-report/models/user.entity.ts.html +0 -523
  167. package/coverage/lcov-report/prettify.css +0 -1
  168. package/coverage/lcov-report/prettify.js +0 -2
  169. package/coverage/lcov-report/redis-client/index.html +0 -116
  170. package/coverage/lcov-report/redis-client/redis.service.ts.html +0 -241
  171. package/coverage/lcov-report/session/index.html +0 -116
  172. package/coverage/lcov-report/session/session.service.ts.html +0 -247
  173. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  174. package/coverage/lcov-report/sorter.js +0 -196
  175. package/coverage/lcov.info +0 -2490
  176. package/coverage/test-report.xml +0 -129
  177. package/sonar-project.properties +0 -23
@@ -1,84 +1,84 @@
1
- import { SystemPrivilege } from '../../../../src/components/system-privilege/system-privilege';
2
- import { SystemPrivilegeRepository } from '../../../../src/components/system-privilege/system-privilege.repository';
3
- import { ClassError } from '@tomei/general';
4
-
5
- describe('SystemPrivilege', () => {
6
- let systemPrivilege: SystemPrivilege;
7
- const systemPrivilegeAttr = {
8
- PrivilegeCode: 'test',
9
- SystemCode: 'test',
10
- Name: 'test',
11
- Description: 'test',
12
- Status: 'test',
13
- CreatedById: 1,
14
- CreatedAt: new Date(),
15
- UpdatedById: 1,
16
- UpdatedAt: new Date(),
17
- };
18
-
19
- beforeEach(() => {
20
- jest.resetAllMocks();
21
- });
22
-
23
- describe('constructor', () => {
24
- it('should create a new SystemPrivilege instance', () => {
25
- systemPrivilege = new (SystemPrivilege as any)(systemPrivilegeAttr);
26
-
27
- expect(systemPrivilege).toBeDefined();
28
- expect(systemPrivilege).toBeInstanceOf(SystemPrivilege);
29
- expect(systemPrivilege.PrivilegeCode).toBe(systemPrivilegeAttr.PrivilegeCode);
30
- expect(systemPrivilege.SystemCode).toBe(systemPrivilegeAttr.SystemCode);
31
- expect(systemPrivilege.Description).toBe(systemPrivilegeAttr.Description);
32
- expect(systemPrivilege.Status).toBe(systemPrivilegeAttr.Status);
33
- expect(systemPrivilege.CreatedById).toBe(systemPrivilegeAttr.CreatedById);
34
- expect(systemPrivilege.CreatedAt).toBe(systemPrivilegeAttr.CreatedAt);
35
- expect(systemPrivilege.UpdatedById).toBe(systemPrivilegeAttr.UpdatedById);
36
- expect(systemPrivilege.UpdatedAt).toBe(systemPrivilegeAttr.UpdatedAt);
37
- });
38
- });
39
-
40
- describe('init', () => {
41
- it('should initialize SystemPrivilege without PrivilegeCode', async () => {
42
- const systemPrivilege = await SystemPrivilege.init(null);
43
- expect(systemPrivilege).toBeDefined();
44
- expect(systemPrivilege).toBeInstanceOf(SystemPrivilege);
45
- expect(systemPrivilege.PrivilegeCode).toBeUndefined();
46
- expect(systemPrivilege.SystemCode).toBeUndefined();
47
- expect(systemPrivilege.Description).toBeUndefined();
48
- expect(systemPrivilege.Status).toBeUndefined();
49
- expect(systemPrivilege.CreatedById).toBeUndefined();
50
- expect(systemPrivilege.CreatedAt).toBeUndefined();
51
- expect(systemPrivilege.UpdatedById).toBeUndefined();
52
- expect(systemPrivilege.UpdatedAt).toBeUndefined();
53
- });
54
-
55
- it('should initialize SystemPrivilege with PrivilegeCode', async () => {
56
- const findByPkSpy = jest
57
- .spyOn(SystemPrivilegeRepository.prototype, 'findByPk')
58
- .mockResolvedValue(systemPrivilegeAttr as any);
59
-
60
- const systemPrivilege = await SystemPrivilege.init(null, 'test');
61
- expect(findByPkSpy).toHaveBeenCalledWith('test', {
62
- transaction: null,
63
- });
64
- expect(systemPrivilege).toBeDefined();
65
- expect(systemPrivilege).toBeInstanceOf(SystemPrivilege);
66
- expect(systemPrivilege.PrivilegeCode).toBe(systemPrivilegeAttr.PrivilegeCode);
67
- expect(systemPrivilege.SystemCode).toBe(systemPrivilegeAttr.SystemCode);
68
- expect(systemPrivilege.Description).toBe(systemPrivilegeAttr.Description);
69
- expect(systemPrivilege.Status).toBe(systemPrivilegeAttr.Status);
70
- expect(systemPrivilege.CreatedById).toBe(systemPrivilegeAttr.CreatedById);
71
- expect(systemPrivilege.CreatedAt).toBe(systemPrivilegeAttr.CreatedAt);
72
- expect(systemPrivilege.UpdatedById).toBe(systemPrivilegeAttr.UpdatedById);
73
- expect(systemPrivilege.UpdatedAt).toBe(systemPrivilegeAttr.UpdatedAt);
74
- });
75
-
76
- it('should throw an error if PrivilegeCode is not found', async () => {
77
- jest.spyOn(SystemPrivilegeRepository.prototype, 'findByPk').mockResolvedValue(null);
78
-
79
- await expect(SystemPrivilege.init(null, 'test')).rejects.toThrow(
80
- new ClassError('SystemPrivilege', 'SystemPrivilegeErrMsg00', 'System Privilege Not Found'),
81
- );
82
- });
83
- });
1
+ import { SystemPrivilege } from '../../../../src/components/system-privilege/system-privilege';
2
+ import { SystemPrivilegeRepository } from '../../../../src/components/system-privilege/system-privilege.repository';
3
+ import { ClassError } from '@tomei/general';
4
+
5
+ describe('SystemPrivilege', () => {
6
+ let systemPrivilege: SystemPrivilege;
7
+ const systemPrivilegeAttr = {
8
+ PrivilegeCode: 'test',
9
+ SystemCode: 'test',
10
+ Name: 'test',
11
+ Description: 'test',
12
+ Status: 'test',
13
+ CreatedById: 1,
14
+ CreatedAt: new Date(),
15
+ UpdatedById: 1,
16
+ UpdatedAt: new Date(),
17
+ };
18
+
19
+ beforeEach(() => {
20
+ jest.resetAllMocks();
21
+ });
22
+
23
+ describe('constructor', () => {
24
+ it('should create a new SystemPrivilege instance', () => {
25
+ systemPrivilege = new (SystemPrivilege as any)(systemPrivilegeAttr);
26
+
27
+ expect(systemPrivilege).toBeDefined();
28
+ expect(systemPrivilege).toBeInstanceOf(SystemPrivilege);
29
+ expect(systemPrivilege.PrivilegeCode).toBe(systemPrivilegeAttr.PrivilegeCode);
30
+ expect(systemPrivilege.SystemCode).toBe(systemPrivilegeAttr.SystemCode);
31
+ expect(systemPrivilege.Description).toBe(systemPrivilegeAttr.Description);
32
+ expect(systemPrivilege.Status).toBe(systemPrivilegeAttr.Status);
33
+ expect(systemPrivilege.CreatedById).toBe(systemPrivilegeAttr.CreatedById);
34
+ expect(systemPrivilege.CreatedAt).toBe(systemPrivilegeAttr.CreatedAt);
35
+ expect(systemPrivilege.UpdatedById).toBe(systemPrivilegeAttr.UpdatedById);
36
+ expect(systemPrivilege.UpdatedAt).toBe(systemPrivilegeAttr.UpdatedAt);
37
+ });
38
+ });
39
+
40
+ describe('init', () => {
41
+ it('should initialize SystemPrivilege without PrivilegeCode', async () => {
42
+ const systemPrivilege = await SystemPrivilege.init(null);
43
+ expect(systemPrivilege).toBeDefined();
44
+ expect(systemPrivilege).toBeInstanceOf(SystemPrivilege);
45
+ expect(systemPrivilege.PrivilegeCode).toBeUndefined();
46
+ expect(systemPrivilege.SystemCode).toBeUndefined();
47
+ expect(systemPrivilege.Description).toBeUndefined();
48
+ expect(systemPrivilege.Status).toBeUndefined();
49
+ expect(systemPrivilege.CreatedById).toBeUndefined();
50
+ expect(systemPrivilege.CreatedAt).toBeUndefined();
51
+ expect(systemPrivilege.UpdatedById).toBeUndefined();
52
+ expect(systemPrivilege.UpdatedAt).toBeUndefined();
53
+ });
54
+
55
+ it('should initialize SystemPrivilege with PrivilegeCode', async () => {
56
+ const findByPkSpy = jest
57
+ .spyOn(SystemPrivilegeRepository.prototype, 'findByPk')
58
+ .mockResolvedValue(systemPrivilegeAttr as any);
59
+
60
+ const systemPrivilege = await SystemPrivilege.init(null, 'test');
61
+ expect(findByPkSpy).toHaveBeenCalledWith('test', {
62
+ transaction: null,
63
+ });
64
+ expect(systemPrivilege).toBeDefined();
65
+ expect(systemPrivilege).toBeInstanceOf(SystemPrivilege);
66
+ expect(systemPrivilege.PrivilegeCode).toBe(systemPrivilegeAttr.PrivilegeCode);
67
+ expect(systemPrivilege.SystemCode).toBe(systemPrivilegeAttr.SystemCode);
68
+ expect(systemPrivilege.Description).toBe(systemPrivilegeAttr.Description);
69
+ expect(systemPrivilege.Status).toBe(systemPrivilegeAttr.Status);
70
+ expect(systemPrivilege.CreatedById).toBe(systemPrivilegeAttr.CreatedById);
71
+ expect(systemPrivilege.CreatedAt).toBe(systemPrivilegeAttr.CreatedAt);
72
+ expect(systemPrivilege.UpdatedById).toBe(systemPrivilegeAttr.UpdatedById);
73
+ expect(systemPrivilege.UpdatedAt).toBe(systemPrivilegeAttr.UpdatedAt);
74
+ });
75
+
76
+ it('should throw an error if PrivilegeCode is not found', async () => {
77
+ jest.spyOn(SystemPrivilegeRepository.prototype, 'findByPk').mockResolvedValue(null);
78
+
79
+ await expect(SystemPrivilege.init(null, 'test')).rejects.toThrow(
80
+ new ClassError('SystemPrivilege', 'SystemPrivilegeErrMsg00', 'System Privilege Not Found'),
81
+ );
82
+ });
83
+ });
84
84
  });
@@ -1,87 +1,87 @@
1
- import { UserGroup } from '../../../../src/components/user-group/user-group';
2
- import { UserGroupRepository } from '../../../../src/components/user-group/user-group.repository';
3
- import { ClassError } from '@tomei/general';
4
-
5
- describe('UserGroup', () => {
6
- let userGroup: UserGroup;
7
- const userGroupAttr = {
8
- UserGroupId: 1,
9
- UserId: 1,
10
- GroupCode: 'group1',
11
- Status: 'active',
12
- InheritGroupPrivilegeYN: 'yes',
13
- InheritGroupSystemAccessYN: 'yes',
14
- CreatedById: 1,
15
- CreatedAt: new Date(),
16
- UpdatedById: 1,
17
- UpdatedAt: new Date(),
18
- };
19
-
20
- beforeEach(() => {
21
- userGroup = new (UserGroup as any)(userGroupAttr);
22
- });
23
-
24
- afterEach(() => {
25
- jest.clearAllMocks();
26
- });
27
-
28
- describe('constructor', () => {
29
- it('should create a new UserGroup instance', () => {
30
- expect(userGroup).toBeDefined();
31
- expect(userGroup).toBeInstanceOf(UserGroup);
32
- expect(userGroup.UserGroupId).toBe(userGroupAttr.UserGroupId);
33
- expect(userGroup.UserId).toBe(userGroupAttr.UserId);
34
- expect(userGroup.GroupCode).toBe(userGroupAttr.GroupCode);
35
- expect(userGroup.Status).toBe(userGroupAttr.Status);
36
- expect(userGroup.InheritGroupPrivilegeYN).toBe(
37
- userGroupAttr.InheritGroupPrivilegeYN
38
- );
39
- expect(userGroup.InheritGroupSystemAccessYN).toBe(
40
- userGroupAttr.InheritGroupSystemAccessYN
41
- );
42
- expect(userGroup.CreatedById).toBe(userGroupAttr.CreatedById);
43
- expect(userGroup.CreatedAt).toBe(userGroupAttr.CreatedAt);
44
- expect(userGroup.UpdatedById).toBe(userGroupAttr.UpdatedById);
45
- expect(userGroup.UpdatedAt).toBe(userGroupAttr.UpdatedAt);
46
- });
47
- });
48
-
49
- describe('init', () => {
50
- it('should initialize UserGroup with valid UserGroupId', async () => {
51
- const findOneMock = jest
52
- .spyOn(UserGroupRepository.prototype, 'findOne')
53
- .mockResolvedValueOnce(userGroupAttr as any);
54
-
55
- const result = await UserGroup.init(null, 1);
56
-
57
- expect(findOneMock).toHaveBeenCalledTimes(1);
58
- expect(findOneMock).toHaveBeenCalledWith({
59
- where: { UserGroupId: 1 },
60
- transaction: null,
61
- });
62
- expect(result).toBeInstanceOf(UserGroup);
63
- expect(result.UserGroupId).toBe(userGroupAttr.UserGroupId);
64
- expect(result.UserId).toBe(userGroupAttr.UserId);
65
- expect(result.GroupCode).toBe(userGroupAttr.GroupCode);
66
- expect(result.Status).toBe(userGroupAttr.Status);
67
- expect(result.InheritGroupPrivilegeYN).toBe(
68
- userGroupAttr.InheritGroupPrivilegeYN
69
- );
70
- expect(result.InheritGroupSystemAccessYN).toBe(
71
- userGroupAttr.InheritGroupSystemAccessYN
72
- );
73
- expect(result.CreatedById).toBe(userGroupAttr.CreatedById);
74
- expect(result.CreatedAt).toBe(userGroupAttr.CreatedAt);
75
- expect(result.UpdatedById).toBe(userGroupAttr.UpdatedById);
76
- expect(result.UpdatedAt).toBe(userGroupAttr.UpdatedAt);
77
- });
78
-
79
- it('should throw ClassError when UserGroupId is not found', async () => {
80
- jest
81
- .spyOn(UserGroupRepository.prototype, 'findOne')
82
- .mockResolvedValueOnce(null);
83
-
84
- await expect(UserGroup.init(null, 1)).rejects.toThrow(ClassError);
85
- });
86
- });
1
+ import { UserGroup } from '../../../../src/components/user-group/user-group';
2
+ import { UserGroupRepository } from '../../../../src/components/user-group/user-group.repository';
3
+ import { ClassError } from '@tomei/general';
4
+
5
+ describe('UserGroup', () => {
6
+ let userGroup: UserGroup;
7
+ const userGroupAttr = {
8
+ UserGroupId: 1,
9
+ UserId: 1,
10
+ GroupCode: 'group1',
11
+ Status: 'active',
12
+ InheritGroupPrivilegeYN: 'yes',
13
+ InheritGroupSystemAccessYN: 'yes',
14
+ CreatedById: 1,
15
+ CreatedAt: new Date(),
16
+ UpdatedById: 1,
17
+ UpdatedAt: new Date(),
18
+ };
19
+
20
+ beforeEach(() => {
21
+ userGroup = new (UserGroup as any)(userGroupAttr);
22
+ });
23
+
24
+ afterEach(() => {
25
+ jest.clearAllMocks();
26
+ });
27
+
28
+ describe('constructor', () => {
29
+ it('should create a new UserGroup instance', () => {
30
+ expect(userGroup).toBeDefined();
31
+ expect(userGroup).toBeInstanceOf(UserGroup);
32
+ expect(userGroup.UserGroupId).toBe(userGroupAttr.UserGroupId);
33
+ expect(userGroup.UserId).toBe(userGroupAttr.UserId);
34
+ expect(userGroup.GroupCode).toBe(userGroupAttr.GroupCode);
35
+ expect(userGroup.Status).toBe(userGroupAttr.Status);
36
+ expect(userGroup.InheritGroupPrivilegeYN).toBe(
37
+ userGroupAttr.InheritGroupPrivilegeYN
38
+ );
39
+ expect(userGroup.InheritGroupSystemAccessYN).toBe(
40
+ userGroupAttr.InheritGroupSystemAccessYN
41
+ );
42
+ expect(userGroup.CreatedById).toBe(userGroupAttr.CreatedById);
43
+ expect(userGroup.CreatedAt).toBe(userGroupAttr.CreatedAt);
44
+ expect(userGroup.UpdatedById).toBe(userGroupAttr.UpdatedById);
45
+ expect(userGroup.UpdatedAt).toBe(userGroupAttr.UpdatedAt);
46
+ });
47
+ });
48
+
49
+ describe('init', () => {
50
+ it('should initialize UserGroup with valid UserGroupId', async () => {
51
+ const findOneMock = jest
52
+ .spyOn(UserGroupRepository.prototype, 'findOne')
53
+ .mockResolvedValueOnce(userGroupAttr as any);
54
+
55
+ const result = await UserGroup.init(null, 1);
56
+
57
+ expect(findOneMock).toHaveBeenCalledTimes(1);
58
+ expect(findOneMock).toHaveBeenCalledWith({
59
+ where: { UserGroupId: 1 },
60
+ transaction: null,
61
+ });
62
+ expect(result).toBeInstanceOf(UserGroup);
63
+ expect(result.UserGroupId).toBe(userGroupAttr.UserGroupId);
64
+ expect(result.UserId).toBe(userGroupAttr.UserId);
65
+ expect(result.GroupCode).toBe(userGroupAttr.GroupCode);
66
+ expect(result.Status).toBe(userGroupAttr.Status);
67
+ expect(result.InheritGroupPrivilegeYN).toBe(
68
+ userGroupAttr.InheritGroupPrivilegeYN
69
+ );
70
+ expect(result.InheritGroupSystemAccessYN).toBe(
71
+ userGroupAttr.InheritGroupSystemAccessYN
72
+ );
73
+ expect(result.CreatedById).toBe(userGroupAttr.CreatedById);
74
+ expect(result.CreatedAt).toBe(userGroupAttr.CreatedAt);
75
+ expect(result.UpdatedById).toBe(userGroupAttr.UpdatedById);
76
+ expect(result.UpdatedAt).toBe(userGroupAttr.UpdatedAt);
77
+ });
78
+
79
+ it('should throw ClassError when UserGroupId is not found', async () => {
80
+ jest
81
+ .spyOn(UserGroupRepository.prototype, 'findOne')
82
+ .mockResolvedValueOnce(null);
83
+
84
+ await expect(UserGroup.init(null, 1)).rejects.toThrow(ClassError);
85
+ });
86
+ });
87
87
  });
@@ -1,79 +1,79 @@
1
- import { UserObjectPrivilege } from '../../../../src/components/user-object-privilege/user-object-privilege';
2
- import { UserObjectPrivilegeRepository } from '../../../../src/components/user-object-privilege/user-object-privilege.repository';
3
- import { ClassError } from '@tomei/general';
4
-
5
- describe('UserObjectPrivilege', () => {
6
- let userObjectPrivilege: UserObjectPrivilege;
7
- const userObjectPrivilegeAttr = {
8
- ObjectPrivilegeId: 1,
9
- UserId: 1,
10
- SystemPrivilegeId: 'code1',
11
- ObjectId: 'object1',
12
- ObjectType: 'type1',
13
- CreatedAt: new Date(),
14
- UpdatedAt: new Date(),
15
- CreatedById: 1,
16
- UpdatedById: 1,
17
- };
18
-
19
- beforeEach(() => {
20
- userObjectPrivilege = new (UserObjectPrivilege as any)(userObjectPrivilegeAttr);
21
- });
22
-
23
- afterEach(() => {
24
- jest.clearAllMocks();
25
- });
26
-
27
- describe('constructor', () => {
28
- it('should create a new UserObjectPrivilege instance', () => {
29
- expect(userObjectPrivilege).toBeDefined();
30
- expect(userObjectPrivilege).toBeInstanceOf(UserObjectPrivilege);
31
- expect(userObjectPrivilege.ObjectPrivilegeId).toBe(userObjectPrivilegeAttr.ObjectPrivilegeId);
32
- expect(userObjectPrivilege.UserId).toBe(userObjectPrivilegeAttr.UserId);
33
- expect(userObjectPrivilege.SystemPrivilegeId).toBe(userObjectPrivilegeAttr.SystemPrivilegeId);
34
- expect(userObjectPrivilege.ObjectId).toBe(userObjectPrivilegeAttr.ObjectId);
35
- expect(userObjectPrivilege.ObjectType).toBe(userObjectPrivilegeAttr.ObjectType);
36
- expect(userObjectPrivilege.CreatedAt).toBe(userObjectPrivilegeAttr.CreatedAt);
37
- expect(userObjectPrivilege.UpdatedAt).toBe(userObjectPrivilegeAttr.UpdatedAt);
38
- expect(userObjectPrivilege.CreatedById).toBe(userObjectPrivilegeAttr.CreatedById);
39
- expect(userObjectPrivilege.UpdatedById).toBe(userObjectPrivilegeAttr.UpdatedById);
40
- });
41
- });
42
-
43
- describe('init', () => {
44
- it('should initialize UserObjectPrivilege with valid ObjectPrivilegeId', async () => {
45
- const findOneMock = jest
46
- .spyOn(UserObjectPrivilegeRepository.prototype, 'findOne')
47
- .mockResolvedValueOnce({
48
- ...userObjectPrivilegeAttr,
49
- get: () => userObjectPrivilegeAttr,
50
- } as any);
51
-
52
- const result = await UserObjectPrivilege.init(null, 1);
53
-
54
- expect(findOneMock).toHaveBeenCalledTimes(1);
55
- expect(findOneMock).toHaveBeenCalledWith({
56
- where: { ObjectPrivilegeId: 1 },
57
- transaction: null,
58
- });
59
- expect(result).toBeInstanceOf(UserObjectPrivilege);
60
- expect(result.ObjectPrivilegeId).toBe(userObjectPrivilegeAttr.ObjectPrivilegeId);
61
- expect(result.UserId).toBe(userObjectPrivilegeAttr.UserId);
62
- expect(result.SystemPrivilegeId).toBe(userObjectPrivilegeAttr.SystemPrivilegeId);
63
- expect(result.ObjectId).toBe(userObjectPrivilegeAttr.ObjectId);
64
- expect(result.ObjectType).toBe(userObjectPrivilegeAttr.ObjectType);
65
- expect(result.CreatedAt).toBe(userObjectPrivilegeAttr.CreatedAt);
66
- expect(result.UpdatedAt).toBe(userObjectPrivilegeAttr.UpdatedAt);
67
- expect(result.CreatedById).toBe(userObjectPrivilegeAttr.CreatedById);
68
- expect(result.UpdatedById).toBe(userObjectPrivilegeAttr.UpdatedById);
69
- });
70
-
71
- it('should throw ClassError when ObjectPrivilegeId is not found', async () => {
72
- jest
73
- .spyOn(UserObjectPrivilegeRepository.prototype, 'findOne')
74
- .mockResolvedValueOnce(null);
75
-
76
- await expect(UserObjectPrivilege.init(null, 1)).rejects.toThrow(ClassError);
77
- });
78
- });
1
+ import { UserObjectPrivilege } from '../../../../src/components/user-object-privilege/user-object-privilege';
2
+ import { UserObjectPrivilegeRepository } from '../../../../src/components/user-object-privilege/user-object-privilege.repository';
3
+ import { ClassError } from '@tomei/general';
4
+
5
+ describe('UserObjectPrivilege', () => {
6
+ let userObjectPrivilege: UserObjectPrivilege;
7
+ const userObjectPrivilegeAttr = {
8
+ ObjectPrivilegeId: 1,
9
+ UserId: 1,
10
+ SystemPrivilegeId: 'code1',
11
+ ObjectId: 'object1',
12
+ ObjectType: 'type1',
13
+ CreatedAt: new Date(),
14
+ UpdatedAt: new Date(),
15
+ CreatedById: 1,
16
+ UpdatedById: 1,
17
+ };
18
+
19
+ beforeEach(() => {
20
+ userObjectPrivilege = new (UserObjectPrivilege as any)(userObjectPrivilegeAttr);
21
+ });
22
+
23
+ afterEach(() => {
24
+ jest.clearAllMocks();
25
+ });
26
+
27
+ describe('constructor', () => {
28
+ it('should create a new UserObjectPrivilege instance', () => {
29
+ expect(userObjectPrivilege).toBeDefined();
30
+ expect(userObjectPrivilege).toBeInstanceOf(UserObjectPrivilege);
31
+ expect(userObjectPrivilege.ObjectPrivilegeId).toBe(userObjectPrivilegeAttr.ObjectPrivilegeId);
32
+ expect(userObjectPrivilege.UserId).toBe(userObjectPrivilegeAttr.UserId);
33
+ expect(userObjectPrivilege.SystemPrivilegeId).toBe(userObjectPrivilegeAttr.SystemPrivilegeId);
34
+ expect(userObjectPrivilege.ObjectId).toBe(userObjectPrivilegeAttr.ObjectId);
35
+ expect(userObjectPrivilege.ObjectType).toBe(userObjectPrivilegeAttr.ObjectType);
36
+ expect(userObjectPrivilege.CreatedAt).toBe(userObjectPrivilegeAttr.CreatedAt);
37
+ expect(userObjectPrivilege.UpdatedAt).toBe(userObjectPrivilegeAttr.UpdatedAt);
38
+ expect(userObjectPrivilege.CreatedById).toBe(userObjectPrivilegeAttr.CreatedById);
39
+ expect(userObjectPrivilege.UpdatedById).toBe(userObjectPrivilegeAttr.UpdatedById);
40
+ });
41
+ });
42
+
43
+ describe('init', () => {
44
+ it('should initialize UserObjectPrivilege with valid ObjectPrivilegeId', async () => {
45
+ const findOneMock = jest
46
+ .spyOn(UserObjectPrivilegeRepository.prototype, 'findOne')
47
+ .mockResolvedValueOnce({
48
+ ...userObjectPrivilegeAttr,
49
+ get: () => userObjectPrivilegeAttr,
50
+ } as any);
51
+
52
+ const result = await UserObjectPrivilege.init(null, 1);
53
+
54
+ expect(findOneMock).toHaveBeenCalledTimes(1);
55
+ expect(findOneMock).toHaveBeenCalledWith({
56
+ where: { ObjectPrivilegeId: 1 },
57
+ transaction: null,
58
+ });
59
+ expect(result).toBeInstanceOf(UserObjectPrivilege);
60
+ expect(result.ObjectPrivilegeId).toBe(userObjectPrivilegeAttr.ObjectPrivilegeId);
61
+ expect(result.UserId).toBe(userObjectPrivilegeAttr.UserId);
62
+ expect(result.SystemPrivilegeId).toBe(userObjectPrivilegeAttr.SystemPrivilegeId);
63
+ expect(result.ObjectId).toBe(userObjectPrivilegeAttr.ObjectId);
64
+ expect(result.ObjectType).toBe(userObjectPrivilegeAttr.ObjectType);
65
+ expect(result.CreatedAt).toBe(userObjectPrivilegeAttr.CreatedAt);
66
+ expect(result.UpdatedAt).toBe(userObjectPrivilegeAttr.UpdatedAt);
67
+ expect(result.CreatedById).toBe(userObjectPrivilegeAttr.CreatedById);
68
+ expect(result.UpdatedById).toBe(userObjectPrivilegeAttr.UpdatedById);
69
+ });
70
+
71
+ it('should throw ClassError when ObjectPrivilegeId is not found', async () => {
72
+ jest
73
+ .spyOn(UserObjectPrivilegeRepository.prototype, 'findOne')
74
+ .mockResolvedValueOnce(null);
75
+
76
+ await expect(UserObjectPrivilege.init(null, 1)).rejects.toThrow(ClassError);
77
+ });
78
+ });
79
79
  });
@@ -1,73 +1,73 @@
1
- import { UserPrivilege } from '../../../../src/components/user-privilege/user-privilege';
2
- import { UserPrivilegeRepository } from '../../../../src/components/user-privilege/user-privilege.repository';
3
- import { ClassError } from '@tomei/general';
4
-
5
- describe('UserPrivilege', () => {
6
- let userPrivilege: UserPrivilege;
7
- const userPrivilegeAttr = {
8
- UserPrivilegeId: 1,
9
- UserId: 1,
10
- SystemPrivilegeId: 'privilege1',
11
- Status: 'active',
12
- CreatedById: 1,
13
- CreatedAt: new Date(),
14
- UpdatedById: 1,
15
- UpdatedAt: new Date(),
16
- };
17
-
18
- beforeEach(() => {
19
- userPrivilege = new (UserPrivilege as any)(userPrivilegeAttr);
20
- });
21
-
22
- afterEach(() => {
23
- jest.clearAllMocks();
24
- });
25
-
26
- describe('constructor', () => {
27
- it('should create a new UserPrivilege instance', () => {
28
- expect(userPrivilege).toBeDefined();
29
- expect(userPrivilege).toBeInstanceOf(UserPrivilege);
30
- expect(userPrivilege.UserPrivilegeId).toBe(userPrivilegeAttr.UserPrivilegeId);
31
- expect(userPrivilege.UserId).toBe(userPrivilegeAttr.UserId);
32
- expect(userPrivilege.SystemPrivilegeId).toBe(userPrivilegeAttr.SystemPrivilegeId);
33
- expect(userPrivilege.Status).toBe(userPrivilegeAttr.Status);
34
- expect(userPrivilege.CreatedById).toBe(userPrivilegeAttr.CreatedById);
35
- expect(userPrivilege.CreatedAt).toBe(userPrivilegeAttr.CreatedAt);
36
- expect(userPrivilege.UpdatedById).toBe(userPrivilegeAttr.UpdatedById);
37
- expect(userPrivilege.UpdatedAt).toBe(userPrivilegeAttr.UpdatedAt);
38
- });
39
- });
40
-
41
- describe('init', () => {
42
- it('should initialize UserPrivilege with valid UserPrivilegeId', async () => {
43
- const findOneMock = jest
44
- .spyOn(UserPrivilegeRepository.prototype, 'findOne')
45
- .mockResolvedValueOnce(userPrivilegeAttr as any);
46
-
47
- const result = await UserPrivilege.init(null, 1);
48
-
49
- expect(findOneMock).toHaveBeenCalledTimes(1);
50
- expect(findOneMock).toHaveBeenCalledWith({
51
- where: { UserPrivilegeId: 1 },
52
- transaction: null,
53
- });
54
- expect(result).toBeInstanceOf(UserPrivilege);
55
- expect(result.UserPrivilegeId).toBe(userPrivilegeAttr.UserPrivilegeId);
56
- expect(result.UserId).toBe(userPrivilegeAttr.UserId);
57
- expect(result.SystemPrivilegeId).toBe(userPrivilegeAttr.SystemPrivilegeId);
58
- expect(result.Status).toBe(userPrivilegeAttr.Status);
59
- expect(result.CreatedById).toBe(userPrivilegeAttr.CreatedById);
60
- expect(result.CreatedAt).toBe(userPrivilegeAttr.CreatedAt);
61
- expect(result.UpdatedById).toBe(userPrivilegeAttr.UpdatedById);
62
- expect(result.UpdatedAt).toBe(userPrivilegeAttr.UpdatedAt);
63
- });
64
-
65
- it('should throw ClassError when UserPrivilegeId is not found', async () => {
66
- jest
67
- .spyOn(UserPrivilegeRepository.prototype, 'findOne')
68
- .mockResolvedValueOnce(null);
69
-
70
- await expect(UserPrivilege.init(null, 1)).rejects.toThrow(ClassError);
71
- });
72
- });
1
+ import { UserPrivilege } from '../../../../src/components/user-privilege/user-privilege';
2
+ import { UserPrivilegeRepository } from '../../../../src/components/user-privilege/user-privilege.repository';
3
+ import { ClassError } from '@tomei/general';
4
+
5
+ describe('UserPrivilege', () => {
6
+ let userPrivilege: UserPrivilege;
7
+ const userPrivilegeAttr = {
8
+ UserPrivilegeId: 1,
9
+ UserId: 1,
10
+ SystemPrivilegeId: 'privilege1',
11
+ Status: 'active',
12
+ CreatedById: 1,
13
+ CreatedAt: new Date(),
14
+ UpdatedById: 1,
15
+ UpdatedAt: new Date(),
16
+ };
17
+
18
+ beforeEach(() => {
19
+ userPrivilege = new (UserPrivilege as any)(userPrivilegeAttr);
20
+ });
21
+
22
+ afterEach(() => {
23
+ jest.clearAllMocks();
24
+ });
25
+
26
+ describe('constructor', () => {
27
+ it('should create a new UserPrivilege instance', () => {
28
+ expect(userPrivilege).toBeDefined();
29
+ expect(userPrivilege).toBeInstanceOf(UserPrivilege);
30
+ expect(userPrivilege.UserPrivilegeId).toBe(userPrivilegeAttr.UserPrivilegeId);
31
+ expect(userPrivilege.UserId).toBe(userPrivilegeAttr.UserId);
32
+ expect(userPrivilege.SystemPrivilegeId).toBe(userPrivilegeAttr.SystemPrivilegeId);
33
+ expect(userPrivilege.Status).toBe(userPrivilegeAttr.Status);
34
+ expect(userPrivilege.CreatedById).toBe(userPrivilegeAttr.CreatedById);
35
+ expect(userPrivilege.CreatedAt).toBe(userPrivilegeAttr.CreatedAt);
36
+ expect(userPrivilege.UpdatedById).toBe(userPrivilegeAttr.UpdatedById);
37
+ expect(userPrivilege.UpdatedAt).toBe(userPrivilegeAttr.UpdatedAt);
38
+ });
39
+ });
40
+
41
+ describe('init', () => {
42
+ it('should initialize UserPrivilege with valid UserPrivilegeId', async () => {
43
+ const findOneMock = jest
44
+ .spyOn(UserPrivilegeRepository.prototype, 'findOne')
45
+ .mockResolvedValueOnce(userPrivilegeAttr as any);
46
+
47
+ const result = await UserPrivilege.init(null, 1);
48
+
49
+ expect(findOneMock).toHaveBeenCalledTimes(1);
50
+ expect(findOneMock).toHaveBeenCalledWith({
51
+ where: { UserPrivilegeId: 1 },
52
+ transaction: null,
53
+ });
54
+ expect(result).toBeInstanceOf(UserPrivilege);
55
+ expect(result.UserPrivilegeId).toBe(userPrivilegeAttr.UserPrivilegeId);
56
+ expect(result.UserId).toBe(userPrivilegeAttr.UserId);
57
+ expect(result.SystemPrivilegeId).toBe(userPrivilegeAttr.SystemPrivilegeId);
58
+ expect(result.Status).toBe(userPrivilegeAttr.Status);
59
+ expect(result.CreatedById).toBe(userPrivilegeAttr.CreatedById);
60
+ expect(result.CreatedAt).toBe(userPrivilegeAttr.CreatedAt);
61
+ expect(result.UpdatedById).toBe(userPrivilegeAttr.UpdatedById);
62
+ expect(result.UpdatedAt).toBe(userPrivilegeAttr.UpdatedAt);
63
+ });
64
+
65
+ it('should throw ClassError when UserPrivilegeId is not found', async () => {
66
+ jest
67
+ .spyOn(UserPrivilegeRepository.prototype, 'findOne')
68
+ .mockResolvedValueOnce(null);
69
+
70
+ await expect(UserPrivilege.init(null, 1)).rejects.toThrow(ClassError);
71
+ });
72
+ });
73
73
  });