@tomei/sso 0.63.0 → 0.64.0-dev.2

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 (150) 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-user/user.js +3 -9
  43. package/dist/src/components/login-user/user.js.map +1 -1
  44. package/dist/tsconfig.tsbuildinfo +1 -1
  45. package/eslint.config.mjs +58 -58
  46. package/jest.config.js +14 -14
  47. package/migrations/20240314080602-create-user-table.js +124 -124
  48. package/migrations/20240314080603-create-user-group-table.js +85 -85
  49. package/migrations/20240314080604-create-user-user-group-table.js +55 -55
  50. package/migrations/20240314080605-create-login-history-table.js +53 -53
  51. package/migrations/20240527064925-create-system-table.js +78 -78
  52. package/migrations/20240527064926-create-system-privilege-table.js +71 -71
  53. package/migrations/20240527065342-create-group-table.js +93 -93
  54. package/migrations/20240527065633-create-group-reporting-user-table.js +76 -76
  55. package/migrations/20240528011551-create-group-system-access-table.js +72 -72
  56. package/migrations/20240528023018-user-system-access-table.js +75 -75
  57. package/migrations/20240528032229-user-privilege-table.js +76 -76
  58. package/migrations/20240528063003-create-group-privilege-table.js +76 -76
  59. package/migrations/20240528063051-create-group-object-privilege-table.js +84 -84
  60. package/migrations/20240528063107-create-user-object-privilege-table.js +84 -84
  61. package/migrations/20240528063108-create-api-key-table.js +85 -85
  62. package/migrations/20241104104802-create-building-table.js +95 -95
  63. package/migrations/20250108091132-add-area-manager-user-id-to-building-table.js +14 -14
  64. package/migrations/20250108091133-add-passcode-to-user-table.js +36 -36
  65. package/migrations/20250210115636-create-user-reporting-hierarchy.js +76 -76
  66. package/migrations/20250326043818-crate-user-password-history.js +42 -42
  67. package/migrations/20250610070720-added-MFBypassYN-to-sso-user.js +30 -30
  68. package/migrations/20250805085707-add-bulk-approval-code-to-sso-user.js +29 -0
  69. package/package.json +87 -90
  70. package/sampledotenv +7 -7
  71. package/src/components/login-user/user.ts +3 -9
  72. package/tsconfig.build.json +5 -5
  73. package/tsconfig.json +23 -23
  74. package/coverage/clover.xml +0 -1452
  75. package/coverage/coverage-final.json +0 -47
  76. package/coverage/lcov-report/base.css +0 -224
  77. package/coverage/lcov-report/block-navigation.js +0 -87
  78. package/coverage/lcov-report/components/group/group.repository.ts.html +0 -118
  79. package/coverage/lcov-report/components/group/group.ts.html +0 -328
  80. package/coverage/lcov-report/components/group/index.html +0 -131
  81. package/coverage/lcov-report/components/group-object-privilege/group-object-privilege.repository.ts.html +0 -118
  82. package/coverage/lcov-report/components/group-object-privilege/group-object-privilege.ts.html +0 -322
  83. package/coverage/lcov-report/components/group-object-privilege/index.html +0 -131
  84. package/coverage/lcov-report/components/group-privilege/group-privilege.repository.ts.html +0 -118
  85. package/coverage/lcov-report/components/group-privilege/group-privilege.ts.html +0 -304
  86. package/coverage/lcov-report/components/group-privilege/index.html +0 -131
  87. package/coverage/lcov-report/components/group-reporting-user/group-reporting-user.repository.ts.html +0 -118
  88. package/coverage/lcov-report/components/group-reporting-user/group-reporting-user.ts.html +0 -328
  89. package/coverage/lcov-report/components/group-reporting-user/index.html +0 -131
  90. package/coverage/lcov-report/components/group-system-access/group-system-access.repository.ts.html +0 -118
  91. package/coverage/lcov-report/components/group-system-access/group-system-access.ts.html +0 -310
  92. package/coverage/lcov-report/components/group-system-access/index.html +0 -131
  93. package/coverage/lcov-report/components/login-history/index.html +0 -116
  94. package/coverage/lcov-report/components/login-history/login-history.repository.ts.html +0 -118
  95. package/coverage/lcov-report/components/login-user/index.html +0 -131
  96. package/coverage/lcov-report/components/login-user/login-user.ts.html +0 -5015
  97. package/coverage/lcov-report/components/login-user/user.repository.ts.html +0 -118
  98. package/coverage/lcov-report/components/password-hash/index.html +0 -116
  99. package/coverage/lcov-report/components/password-hash/password-hash.service.ts.html +0 -127
  100. package/coverage/lcov-report/components/system/index.html +0 -131
  101. package/coverage/lcov-report/components/system/system.repository.ts.html +0 -118
  102. package/coverage/lcov-report/components/system/system.ts.html +0 -910
  103. package/coverage/lcov-report/components/system-privilege/index.html +0 -131
  104. package/coverage/lcov-report/components/system-privilege/system-privilege.repository.ts.html +0 -121
  105. package/coverage/lcov-report/components/system-privilege/system-privilege.ts.html +0 -391
  106. package/coverage/lcov-report/components/user-group/index.html +0 -131
  107. package/coverage/lcov-report/components/user-group/user-group.repository.ts.html +0 -118
  108. package/coverage/lcov-report/components/user-group/user-group.ts.html +0 -355
  109. package/coverage/lcov-report/components/user-object-privilege/index.html +0 -131
  110. package/coverage/lcov-report/components/user-object-privilege/user-object-privilege.repository.ts.html +0 -118
  111. package/coverage/lcov-report/components/user-object-privilege/user-object-privilege.ts.html +0 -313
  112. package/coverage/lcov-report/components/user-privilege/index.html +0 -131
  113. package/coverage/lcov-report/components/user-privilege/user-privilege.repository.ts.html +0 -118
  114. package/coverage/lcov-report/components/user-privilege/user-privilege.ts.html +0 -307
  115. package/coverage/lcov-report/components/user-system-access/index.html +0 -131
  116. package/coverage/lcov-report/components/user-system-access/user-system-access.repository.ts.html +0 -118
  117. package/coverage/lcov-report/components/user-system-access/user-system-access.ts.html +0 -313
  118. package/coverage/lcov-report/enum/group-type.enum.ts.html +0 -109
  119. package/coverage/lcov-report/enum/index.html +0 -161
  120. package/coverage/lcov-report/enum/index.ts.html +0 -94
  121. package/coverage/lcov-report/enum/user-status.enum.ts.html +0 -106
  122. package/coverage/lcov-report/enum/yn.enum.ts.html +0 -97
  123. package/coverage/lcov-report/favicon.png +0 -0
  124. package/coverage/lcov-report/index.html +0 -371
  125. package/coverage/lcov-report/models/group-object-privilege.entity.ts.html +0 -334
  126. package/coverage/lcov-report/models/group-privilege.entity.ts.html +0 -316
  127. package/coverage/lcov-report/models/group-reporting-user.entity.ts.html +0 -340
  128. package/coverage/lcov-report/models/group-system-access.entity.ts.html +0 -325
  129. package/coverage/lcov-report/models/group.entity.ts.html +0 -436
  130. package/coverage/lcov-report/models/index.html +0 -311
  131. package/coverage/lcov-report/models/login-history.entity.ts.html +0 -253
  132. package/coverage/lcov-report/models/staff.entity.ts.html +0 -412
  133. package/coverage/lcov-report/models/system-privilege.entity.ts.html +0 -355
  134. package/coverage/lcov-report/models/system.entity.ts.html +0 -424
  135. package/coverage/lcov-report/models/user-group.entity.ts.html +0 -355
  136. package/coverage/lcov-report/models/user-object-privilege.entity.ts.html +0 -331
  137. package/coverage/lcov-report/models/user-privilege.entity.ts.html +0 -316
  138. package/coverage/lcov-report/models/user-system-access.entity.ts.html +0 -316
  139. package/coverage/lcov-report/models/user.entity.ts.html +0 -523
  140. package/coverage/lcov-report/prettify.css +0 -1
  141. package/coverage/lcov-report/prettify.js +0 -2
  142. package/coverage/lcov-report/redis-client/index.html +0 -116
  143. package/coverage/lcov-report/redis-client/redis.service.ts.html +0 -241
  144. package/coverage/lcov-report/session/index.html +0 -116
  145. package/coverage/lcov-report/session/session.service.ts.html +0 -247
  146. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  147. package/coverage/lcov-report/sorter.js +0 -196
  148. package/coverage/lcov.info +0 -2490
  149. package/coverage/test-report.xml +0 -129
  150. 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
  });