@tomei/sso 0.11.4 → 0.11.6
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/.commitlintrc.json +22 -22
- package/.eslintrc +16 -16
- package/.eslintrc.js +35 -35
- package/.husky/commit-msg +15 -15
- package/.husky/pre-commit +7 -7
- package/.prettierrc +4 -4
- package/Jenkinsfile +57 -57
- package/README.md +23 -23
- package/__tests__/unit/components/login-user/login-user.spec.ts +742 -742
- package/__tests__/unit/components/password-hash/password-hash.service.spec.ts +31 -31
- package/__tests__/unit/redis-client/redis.service.spec.ts +23 -23
- package/__tests__/unit/session/session.service.spec.ts +47 -47
- package/__tests__/unit/system-privilege/system-privilage.spec.ts +91 -91
- package/create-sso-user.sql +39 -39
- package/dist/__tests__/unit/components/login-history/login-history.repository.spec.d.ts +0 -0
- package/dist/__tests__/unit/components/login-history/login-history.repository.spec.js +1 -0
- package/dist/__tests__/unit/components/login-history/login-history.repository.spec.js.map +1 -0
- package/dist/__tests__/unit/components/login-user/login-user.spec.d.ts +1 -1
- package/dist/__tests__/unit/components/login-user/login-user.spec.js +662 -662
- package/dist/__tests__/unit/components/login-user/user.repository.spec.d.ts +0 -0
- package/dist/__tests__/unit/components/login-user/user.repository.spec.js +1 -0
- package/dist/__tests__/unit/components/login-user/user.repository.spec.js.map +1 -0
- package/dist/__tests__/unit/components/password-hash/password-hash.service.spec.d.ts +1 -1
- package/dist/__tests__/unit/components/password-hash/password-hash.service.spec.js +37 -37
- package/dist/__tests__/unit/components/system/system.repository.spec.d.ts +0 -0
- package/dist/__tests__/unit/components/system/system.repository.spec.js +1 -0
- package/dist/__tests__/unit/components/system/system.repository.spec.js.map +1 -0
- package/dist/__tests__/unit/components/system-access/system-access.repository.spec.d.ts +0 -0
- package/dist/__tests__/unit/components/system-access/system-access.repository.spec.js +1 -0
- package/dist/__tests__/unit/components/system-access/system-access.repository.spec.js.map +1 -0
- package/dist/__tests__/unit/redis-client/redis.service.spec.d.ts +1 -1
- package/dist/__tests__/unit/redis-client/redis.service.spec.js +31 -31
- package/dist/__tests__/unit/session/session.service.spec.d.ts +1 -1
- package/dist/__tests__/unit/session/session.service.spec.js +54 -54
- package/dist/__tests__/unit/system-privilege/system-privilage.spec.js +5 -5
- package/dist/index.d.ts +1 -1
- package/dist/index.js +17 -17
- package/dist/src/components/index.d.ts +7 -7
- package/dist/src/components/index.js +23 -23
- package/dist/src/components/login-history/index.d.ts +1 -1
- package/dist/src/components/login-history/index.js +17 -17
- package/dist/src/components/login-history/login-history.repository.d.ts +5 -5
- package/dist/src/components/login-history/login-history.repository.js +11 -11
- package/dist/src/components/login-user/index.d.ts +3 -3
- package/dist/src/components/login-user/index.js +19 -19
- package/dist/src/components/login-user/interfaces/index.d.ts +1 -1
- package/dist/src/components/login-user/interfaces/index.js +17 -17
- package/dist/src/components/login-user/interfaces/user-info.interface.d.ts +9 -9
- package/dist/src/components/login-user/interfaces/user-info.interface.js +2 -2
- package/dist/src/components/login-user/login-user.d.ts +45 -45
- package/dist/src/components/login-user/login-user.js +414 -415
- package/dist/src/components/login-user/login-user.js.map +1 -1
- package/dist/src/components/login-user/user.repository.d.ts +5 -5
- package/dist/src/components/login-user/user.repository.js +11 -11
- package/dist/src/components/password-hash/index.d.ts +2 -2
- package/dist/src/components/password-hash/index.js +18 -18
- package/dist/src/components/password-hash/interfaces/index.d.ts +1 -1
- package/dist/src/components/password-hash/interfaces/index.js +17 -17
- package/dist/src/components/password-hash/interfaces/password-hash-service.interface.d.ts +4 -4
- package/dist/src/components/password-hash/interfaces/password-hash-service.interface.js +2 -2
- package/dist/src/components/password-hash/password-hash.service.d.ts +6 -6
- package/dist/src/components/password-hash/password-hash.service.js +27 -27
- package/dist/src/components/system/index.d.ts +1 -1
- package/dist/src/components/system/index.js +17 -17
- package/dist/src/components/system/system.repository.d.ts +5 -5
- package/dist/src/components/system/system.repository.js +11 -11
- package/dist/src/components/system-access/index.d.ts +1 -1
- package/dist/src/components/system-access/index.js +17 -17
- package/dist/src/components/system-access/system-access.repository.d.ts +5 -5
- package/dist/src/components/system-access/system-access.repository.js +11 -11
- package/dist/src/components/system-privilege/privilege.d.ts +6 -6
- package/dist/src/components/system-privilege/privilege.js +76 -76
- package/dist/src/components/system-privilege/system-privilege.repository.d.ts +6 -6
- package/dist/src/components/system-privilege/system-privilege.repository.js +34 -34
- package/dist/src/components/user-group/index.d.ts +1 -1
- package/dist/src/components/user-group/index.js +17 -17
- package/dist/src/components/user-group/user-group.repository.d.ts +5 -5
- package/dist/src/components/user-group/user-group.repository.js +11 -11
- package/dist/src/components/user-user-group/index.d.ts +1 -1
- package/dist/src/components/user-user-group/index.js +17 -17
- package/dist/src/components/user-user-group/user-user-group.repository.d.ts +5 -5
- package/dist/src/components/user-user-group/user-user-group.repository.js +11 -11
- package/dist/src/database.d.ts +4 -4
- package/dist/src/database.js +14 -14
- package/dist/src/index.d.ts +5 -5
- package/dist/src/index.js +23 -23
- package/dist/src/interfaces/index.d.ts +2 -2
- package/dist/src/interfaces/index.js +18 -18
- package/dist/src/interfaces/system-login.interface.d.ts +6 -6
- package/dist/src/interfaces/system-login.interface.js +2 -2
- package/dist/src/interfaces/user-session.interface.d.ts +4 -4
- package/dist/src/interfaces/user-session.interface.js +2 -2
- package/dist/src/models/authorization-code.entity.d.ts +14 -14
- package/dist/src/models/authorization-code.entity.js +85 -85
- package/dist/src/models/bearer-token.entity.d.ts +11 -11
- package/dist/src/models/bearer-token.entity.js +71 -71
- package/dist/src/models/building-type.entity.d.ts +7 -7
- package/dist/src/models/building-type.entity.js +49 -49
- package/dist/src/models/building.entity.d.ts +39 -39
- package/dist/src/models/building.entity.js +250 -250
- package/dist/src/models/city.entity.d.ts +11 -11
- package/dist/src/models/city.entity.js +71 -71
- package/dist/src/models/company.entity.d.ts +18 -18
- package/dist/src/models/company.entity.js +113 -113
- package/dist/src/models/country.entity.d.ts +15 -15
- package/dist/src/models/country.entity.js +91 -91
- package/dist/src/models/department.entity.d.ts +19 -19
- package/dist/src/models/department.entity.js +111 -111
- package/dist/src/models/group-role-privilege.entity.d.ts +17 -17
- package/dist/src/models/group-role-privilege.entity.js +89 -89
- package/dist/src/models/group-system-access.entity.d.ts +11 -11
- package/dist/src/models/group-system-access.entity.js +61 -61
- package/dist/src/models/group-system-privilege.entity.d.ts +11 -11
- package/dist/src/models/group-system-privilege.entity.js +61 -61
- package/dist/src/models/group-system-role.entity.d.ts +11 -11
- package/dist/src/models/group-system-role.entity.js +61 -61
- package/dist/src/models/login-history.entity.d.ts +12 -12
- package/dist/src/models/login-history.entity.js +69 -69
- package/dist/src/models/oauth-token.entity.d.ts +14 -14
- package/dist/src/models/oauth-token.entity.js +85 -85
- package/dist/src/models/role.entity.d.ts +17 -17
- package/dist/src/models/role.entity.js +101 -101
- package/dist/src/models/staff-type.entity.d.ts +7 -7
- package/dist/src/models/staff-type.entity.js +49 -49
- package/dist/src/models/staff.entity.d.ts +39 -39
- package/dist/src/models/staff.entity.js +249 -249
- package/dist/src/models/state.entity.d.ts +10 -10
- package/dist/src/models/state.entity.js +63 -63
- package/dist/src/models/system-accesss.entity.d.ts +6 -6
- package/dist/src/models/system-accesss.entity.js +50 -50
- package/dist/src/models/system-privilege.entity.d.ts +16 -16
- package/dist/src/models/system-privilege.entity.js +89 -89
- package/dist/src/models/system-role-privilege.entity.d.ts +11 -11
- package/dist/src/models/system-role-privilege.entity.js +59 -59
- package/dist/src/models/system-role.entity.d.ts +11 -11
- package/dist/src/models/system-role.entity.js +82 -82
- package/dist/src/models/system.entity.d.ts +19 -19
- package/dist/src/models/system.entity.js +145 -145
- package/dist/src/models/user-group.entity.d.ts +23 -23
- package/dist/src/models/user-group.entity.js +139 -139
- package/dist/src/models/user-role.entity.d.ts +12 -12
- package/dist/src/models/user-role.entity.js +72 -72
- package/dist/src/models/user-system-privileges.entity.d.ts +13 -13
- package/dist/src/models/user-system-privileges.entity.js +88 -88
- package/dist/src/models/user-system-role.entity.d.ts +11 -11
- package/dist/src/models/user-system-role.entity.js +59 -59
- package/dist/src/models/user-user-group.entity.d.ts +14 -14
- package/dist/src/models/user-user-group.entity.js +72 -72
- package/dist/src/models/user.entity.d.ts +30 -30
- package/dist/src/models/user.entity.js +130 -130
- package/dist/src/prisma-client/__mocks__/prisma.d.ts +3 -0
- package/dist/src/prisma-client/__mocks__/prisma.js +14 -0
- package/dist/src/prisma-client/__mocks__/prisma.js.map +1 -0
- package/dist/src/prisma-client/client.d.ts +3 -0
- package/dist/src/prisma-client/client.js +6 -0
- package/dist/src/prisma-client/client.js.map +1 -0
- package/dist/src/prisma-client/index.d.ts +1 -0
- package/dist/src/prisma-client/index.js +18 -0
- package/dist/src/prisma-client/index.js.map +1 -0
- package/dist/src/redis-client/__mocks__/jest-initial-setup.d.ts +1 -1
- package/dist/src/redis-client/__mocks__/jest-initial-setup.js +4 -4
- package/dist/src/redis-client/__mocks__/redis-mock.d.ts +2 -2
- package/dist/src/redis-client/__mocks__/redis-mock.js +22 -22
- package/dist/src/redis-client/index.d.ts +1 -1
- package/dist/src/redis-client/index.js +17 -17
- package/dist/src/redis-client/redis.service.d.ts +7 -7
- package/dist/src/redis-client/redis.service.js +60 -60
- package/dist/src/session/index.d.ts +2 -2
- package/dist/src/session/index.js +18 -18
- package/dist/src/session/interfaces/index.d.ts +1 -1
- package/dist/src/session/interfaces/index.js +17 -17
- package/dist/src/session/interfaces/session-service.interface.d.ts +6 -6
- package/dist/src/session/interfaces/session-service.interface.js +2 -2
- package/dist/src/session/session.service.d.ts +10 -10
- package/dist/src/session/session.service.js +62 -62
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/jest.config.js +13 -13
- package/migrations/01-alter-system-privilege-table.js +13 -13
- package/migrations/02-alter-user-group-table.js +78 -78
- package/migrations/03-alter-user-system-privilege-table.js +38 -38
- package/migrations/04-create-user-user-group-table.js +55 -55
- package/migrations/05-create-login-history-table.js +49 -49
- package/package.json +5 -7
- package/sampledotenv +7 -7
- package/src/components/login-user/login-user.ts +1 -1
- package/tsconfig.build.json +5 -5
- package/tsconfig.json +23 -23
@@ -1,32 +1,32 @@
|
|
1
|
-
import { PasswordHashService } from "../../../../src/components/password-hash/password-hash.service";
|
2
|
-
|
3
|
-
jest.mock('argon2', () => {
|
4
|
-
return {
|
5
|
-
hash: jest.fn((passowrd) => {
|
6
|
-
return `hash${passowrd}`;
|
7
|
-
}),
|
8
|
-
verify: jest.fn().mockResolvedValue(true)
|
9
|
-
}
|
10
|
-
})
|
11
|
-
|
12
|
-
describe('password-hash.service', () => {
|
13
|
-
const passwordHashService = new PasswordHashService();
|
14
|
-
afterEach(() => {
|
15
|
-
jest.clearAllMocks();
|
16
|
-
});
|
17
|
-
|
18
|
-
it('should return hash password', async () => {
|
19
|
-
const password = 'password';
|
20
|
-
const hash = await passwordHashService.hashPassword(password);
|
21
|
-
expect(hash).toEqual('hashpassword');
|
22
|
-
})
|
23
|
-
|
24
|
-
it('should return true when verify password', async () => {
|
25
|
-
const password = 'password';
|
26
|
-
const hash = 'hashpassword10';
|
27
|
-
const result = await passwordHashService.verify(password, hash);
|
28
|
-
expect(result).toEqual(true);
|
29
|
-
});
|
30
|
-
|
31
|
-
|
1
|
+
import { PasswordHashService } from "../../../../src/components/password-hash/password-hash.service";
|
2
|
+
|
3
|
+
jest.mock('argon2', () => {
|
4
|
+
return {
|
5
|
+
hash: jest.fn((passowrd) => {
|
6
|
+
return `hash${passowrd}`;
|
7
|
+
}),
|
8
|
+
verify: jest.fn().mockResolvedValue(true)
|
9
|
+
}
|
10
|
+
})
|
11
|
+
|
12
|
+
describe('password-hash.service', () => {
|
13
|
+
const passwordHashService = new PasswordHashService();
|
14
|
+
afterEach(() => {
|
15
|
+
jest.clearAllMocks();
|
16
|
+
});
|
17
|
+
|
18
|
+
it('should return hash password', async () => {
|
19
|
+
const password = 'password';
|
20
|
+
const hash = await passwordHashService.hashPassword(password);
|
21
|
+
expect(hash).toEqual('hashpassword');
|
22
|
+
})
|
23
|
+
|
24
|
+
it('should return true when verify password', async () => {
|
25
|
+
const password = 'password';
|
26
|
+
const hash = 'hashpassword10';
|
27
|
+
const result = await passwordHashService.verify(password, hash);
|
28
|
+
expect(result).toEqual(true);
|
29
|
+
});
|
30
|
+
|
31
|
+
|
32
32
|
})
|
@@ -1,24 +1,24 @@
|
|
1
|
-
import { RedisService } from "../../../src/redis-client/redis.service";
|
2
|
-
require('dotenv').config()
|
3
|
-
// nneed to figure out how to mock redis
|
4
|
-
describe('redis.service', () => {
|
5
|
-
|
6
|
-
afterEach(() => {
|
7
|
-
jest.restoreAllMocks()
|
8
|
-
})
|
9
|
-
|
10
|
-
it('should return redis service when instansiated', async () => {
|
11
|
-
const redisService = await RedisService.init();
|
12
|
-
expect(redisService).toBeDefined();
|
13
|
-
});
|
14
|
-
|
15
|
-
it('should able to write and read redis', async () => {
|
16
|
-
const data = {
|
17
|
-
test: 'test'
|
18
|
-
}
|
19
|
-
const redisService = await RedisService.init();
|
20
|
-
await redisService.set("test", data, 60 * 60 * 24 * 1)
|
21
|
-
const result = await redisService.get("test");
|
22
|
-
expect(result).toEqual(JSON.stringify(data));
|
23
|
-
});
|
1
|
+
import { RedisService } from "../../../src/redis-client/redis.service";
|
2
|
+
require('dotenv').config()
|
3
|
+
// nneed to figure out how to mock redis
|
4
|
+
describe('redis.service', () => {
|
5
|
+
|
6
|
+
afterEach(() => {
|
7
|
+
jest.restoreAllMocks()
|
8
|
+
})
|
9
|
+
|
10
|
+
it('should return redis service when instansiated', async () => {
|
11
|
+
const redisService = await RedisService.init();
|
12
|
+
expect(redisService).toBeDefined();
|
13
|
+
});
|
14
|
+
|
15
|
+
it('should able to write and read redis', async () => {
|
16
|
+
const data = {
|
17
|
+
test: 'test'
|
18
|
+
}
|
19
|
+
const redisService = await RedisService.init();
|
20
|
+
await redisService.set("test", data, 60 * 60 * 24 * 1)
|
21
|
+
const result = await redisService.get("test");
|
22
|
+
expect(result).toEqual(JSON.stringify(data));
|
23
|
+
});
|
24
24
|
});
|
@@ -1,47 +1,47 @@
|
|
1
|
-
import { IUserSession } from '../../../src/interfaces/user-session.interface';
|
2
|
-
import { SessionService } from '../../../src/session/session.service';
|
3
|
-
require('dotenv').config()
|
4
|
-
|
5
|
-
describe('session.service', () => {
|
6
|
-
it('should return session service when instansiated', async () => {
|
7
|
-
const sessionService = await SessionService.init();
|
8
|
-
expect(sessionService).toBeDefined();
|
9
|
-
});
|
10
|
-
|
11
|
-
it('should able to write session data', async () => {
|
12
|
-
const data: IUserSession = {
|
13
|
-
systemLogins: [
|
14
|
-
{
|
15
|
-
id: '1',
|
16
|
-
code: 'EZC',
|
17
|
-
sessionId: 'test1',
|
18
|
-
privileges: ['PRIVILEGE1', 'PRIVILEGE2'],
|
19
|
-
},
|
20
|
-
],
|
21
|
-
};
|
22
|
-
const sessionService = await SessionService.init();
|
23
|
-
await sessionService.setUserSession("1", data)
|
24
|
-
const result = await sessionService.retrieveUserSession("1");
|
25
|
-
expect(result).toEqual(data);
|
26
|
-
});
|
27
|
-
|
28
|
-
it('should able to refresh session data', async () => {
|
29
|
-
const setUserSession = jest.spyOn(SessionService.prototype, 'setUserSession');
|
30
|
-
const retrieveUserSession = jest.spyOn(SessionService.prototype, 'retrieveUserSession');
|
31
|
-
const data: IUserSession = {
|
32
|
-
systemLogins: [
|
33
|
-
{
|
34
|
-
id: '1',
|
35
|
-
code: 'EZC',
|
36
|
-
sessionId: 'test1',
|
37
|
-
privileges: ['PRIVILEGE1', 'PRIVILEGE2'],
|
38
|
-
},
|
39
|
-
],
|
40
|
-
};
|
41
|
-
const sessionService = await SessionService.init();
|
42
|
-
await sessionService.setUserSession("1", data)
|
43
|
-
await sessionService.refreshDuration("1");
|
44
|
-
expect(setUserSession).toBeCalledTimes(2);
|
45
|
-
expect(retrieveUserSession).toBeCalledTimes(1);
|
46
|
-
});
|
47
|
-
});
|
1
|
+
import { IUserSession } from '../../../src/interfaces/user-session.interface';
|
2
|
+
import { SessionService } from '../../../src/session/session.service';
|
3
|
+
require('dotenv').config()
|
4
|
+
|
5
|
+
describe('session.service', () => {
|
6
|
+
it('should return session service when instansiated', async () => {
|
7
|
+
const sessionService = await SessionService.init();
|
8
|
+
expect(sessionService).toBeDefined();
|
9
|
+
});
|
10
|
+
|
11
|
+
it('should able to write session data', async () => {
|
12
|
+
const data: IUserSession = {
|
13
|
+
systemLogins: [
|
14
|
+
{
|
15
|
+
id: '1',
|
16
|
+
code: 'EZC',
|
17
|
+
sessionId: 'test1',
|
18
|
+
privileges: ['PRIVILEGE1', 'PRIVILEGE2'],
|
19
|
+
},
|
20
|
+
],
|
21
|
+
};
|
22
|
+
const sessionService = await SessionService.init();
|
23
|
+
await sessionService.setUserSession("1", data)
|
24
|
+
const result = await sessionService.retrieveUserSession("1");
|
25
|
+
expect(result).toEqual(data);
|
26
|
+
});
|
27
|
+
|
28
|
+
it('should able to refresh session data', async () => {
|
29
|
+
const setUserSession = jest.spyOn(SessionService.prototype, 'setUserSession');
|
30
|
+
const retrieveUserSession = jest.spyOn(SessionService.prototype, 'retrieveUserSession');
|
31
|
+
const data: IUserSession = {
|
32
|
+
systemLogins: [
|
33
|
+
{
|
34
|
+
id: '1',
|
35
|
+
code: 'EZC',
|
36
|
+
sessionId: 'test1',
|
37
|
+
privileges: ['PRIVILEGE1', 'PRIVILEGE2'],
|
38
|
+
},
|
39
|
+
],
|
40
|
+
};
|
41
|
+
const sessionService = await SessionService.init();
|
42
|
+
await sessionService.setUserSession("1", data)
|
43
|
+
await sessionService.refreshDuration("1");
|
44
|
+
expect(setUserSession).toBeCalledTimes(2);
|
45
|
+
expect(retrieveUserSession).toBeCalledTimes(1);
|
46
|
+
});
|
47
|
+
});
|
@@ -1,91 +1,91 @@
|
|
1
|
-
// import { Privilege } from '../../../src/components/system-privilege/privilege';
|
2
|
-
// import { SystemPrivilegeRepository } from '../../../src/components/system-privilege/system-privilege.repository';
|
3
|
-
// import { SystemRepository } from '../../../src/components/system/system.repository';
|
4
|
-
// describe('SystemPrivilege', () => {
|
5
|
-
// afterEach(async () => {
|
6
|
-
// jest.restoreAllMocks();
|
7
|
-
// });
|
8
|
-
// it('should be able to load single package privileges', async () => {
|
9
|
-
// let privilegeCalled = 0;
|
10
|
-
// const findOrCreateMock = jest
|
11
|
-
// .spyOn(SystemPrivilegeRepository.prototype, 'findOrCreate')
|
12
|
-
// .mockResolvedValueOnce([{}, true] as any);
|
13
|
-
|
14
|
-
// const systemRepositoryMock = jest
|
15
|
-
// .spyOn(SystemRepository.prototype, 'findOne')
|
16
|
-
// .mockResolvedValueOnce({
|
17
|
-
// id: 175,
|
18
|
-
// } as any);
|
19
|
-
|
20
|
-
// jest.mock('@tomei/mailer/privileges.json', () => {
|
21
|
-
// privilegeCalled++;
|
22
|
-
// return {
|
23
|
-
// Privileges: [
|
24
|
-
// {
|
25
|
-
// Code: 'Privilege1',
|
26
|
-
// Description: 'This is Privilege1',
|
27
|
-
// },
|
28
|
-
// ],
|
29
|
-
// };
|
30
|
-
// });
|
31
|
-
|
32
|
-
// await Privilege.loadPrivileges('mailer', 'EZC');
|
33
|
-
// expect(findOrCreateMock).toBeCalledTimes(1);
|
34
|
-
// expect(systemRepositoryMock).toBeCalledTimes(1);
|
35
|
-
// expect(privilegeCalled).toEqual(1);
|
36
|
-
// });
|
37
|
-
|
38
|
-
// it('should be able to load multiple package privileges', async () => {
|
39
|
-
// let privilegeCalled = 0;
|
40
|
-
// const findOrCreateMock = jest
|
41
|
-
// .spyOn(SystemPrivilegeRepository.prototype, 'findOrCreate')
|
42
|
-
// .mockResolvedValueOnce([{}, true] as any);
|
43
|
-
|
44
|
-
// const systemRepositoryMock = jest
|
45
|
-
// .spyOn(SystemRepository.prototype, 'findOne')
|
46
|
-
// .mockResolvedValueOnce({
|
47
|
-
// id: 175,
|
48
|
-
// } as any);
|
49
|
-
|
50
|
-
// jest.mock(
|
51
|
-
// '@tomei/mailer/privileges.json',
|
52
|
-
// () => {
|
53
|
-
// privilegeCalled++;
|
54
|
-
// return {
|
55
|
-
// Privileges: [
|
56
|
-
// {
|
57
|
-
// Code: 'Privilege1',
|
58
|
-
// Description: 'This is Privilege1',
|
59
|
-
// },
|
60
|
-
// ],
|
61
|
-
// };
|
62
|
-
// },
|
63
|
-
// );
|
64
|
-
|
65
|
-
// jest.mock(
|
66
|
-
// '@tomei/config/privileges.json',
|
67
|
-
// () => {
|
68
|
-
// privilegeCalled++;
|
69
|
-
// return {
|
70
|
-
// Privileges: [
|
71
|
-
// {
|
72
|
-
// Code: 'Privilege2',
|
73
|
-
// Description: 'This is Privilege2',
|
74
|
-
// },
|
75
|
-
// ],
|
76
|
-
// };
|
77
|
-
// },
|
78
|
-
// );
|
79
|
-
|
80
|
-
// await Privilege.loadPrivileges(['mailer', 'config'], 'EZC');
|
81
|
-
// expect(findOrCreateMock).toBeCalledTimes(2);
|
82
|
-
// expect(systemRepositoryMock).toBeCalledTimes(1);
|
83
|
-
// expect(privilegeCalled).toEqual(2);
|
84
|
-
// });
|
85
|
-
// });
|
86
|
-
|
87
|
-
describe('SystemPrivilege', () => {
|
88
|
-
it('should be true', () => {
|
89
|
-
expect(true).toBe(true);
|
90
|
-
});
|
91
|
-
});
|
1
|
+
// import { Privilege } from '../../../src/components/system-privilege/privilege';
|
2
|
+
// import { SystemPrivilegeRepository } from '../../../src/components/system-privilege/system-privilege.repository';
|
3
|
+
// import { SystemRepository } from '../../../src/components/system/system.repository';
|
4
|
+
// describe('SystemPrivilege', () => {
|
5
|
+
// afterEach(async () => {
|
6
|
+
// jest.restoreAllMocks();
|
7
|
+
// });
|
8
|
+
// it('should be able to load single package privileges', async () => {
|
9
|
+
// let privilegeCalled = 0;
|
10
|
+
// const findOrCreateMock = jest
|
11
|
+
// .spyOn(SystemPrivilegeRepository.prototype, 'findOrCreate')
|
12
|
+
// .mockResolvedValueOnce([{}, true] as any);
|
13
|
+
|
14
|
+
// const systemRepositoryMock = jest
|
15
|
+
// .spyOn(SystemRepository.prototype, 'findOne')
|
16
|
+
// .mockResolvedValueOnce({
|
17
|
+
// id: 175,
|
18
|
+
// } as any);
|
19
|
+
|
20
|
+
// jest.mock('@tomei/mailer/privileges.json', () => {
|
21
|
+
// privilegeCalled++;
|
22
|
+
// return {
|
23
|
+
// Privileges: [
|
24
|
+
// {
|
25
|
+
// Code: 'Privilege1',
|
26
|
+
// Description: 'This is Privilege1',
|
27
|
+
// },
|
28
|
+
// ],
|
29
|
+
// };
|
30
|
+
// });
|
31
|
+
|
32
|
+
// await Privilege.loadPrivileges('mailer', 'EZC');
|
33
|
+
// expect(findOrCreateMock).toBeCalledTimes(1);
|
34
|
+
// expect(systemRepositoryMock).toBeCalledTimes(1);
|
35
|
+
// expect(privilegeCalled).toEqual(1);
|
36
|
+
// });
|
37
|
+
|
38
|
+
// it('should be able to load multiple package privileges', async () => {
|
39
|
+
// let privilegeCalled = 0;
|
40
|
+
// const findOrCreateMock = jest
|
41
|
+
// .spyOn(SystemPrivilegeRepository.prototype, 'findOrCreate')
|
42
|
+
// .mockResolvedValueOnce([{}, true] as any);
|
43
|
+
|
44
|
+
// const systemRepositoryMock = jest
|
45
|
+
// .spyOn(SystemRepository.prototype, 'findOne')
|
46
|
+
// .mockResolvedValueOnce({
|
47
|
+
// id: 175,
|
48
|
+
// } as any);
|
49
|
+
|
50
|
+
// jest.mock(
|
51
|
+
// '@tomei/mailer/privileges.json',
|
52
|
+
// () => {
|
53
|
+
// privilegeCalled++;
|
54
|
+
// return {
|
55
|
+
// Privileges: [
|
56
|
+
// {
|
57
|
+
// Code: 'Privilege1',
|
58
|
+
// Description: 'This is Privilege1',
|
59
|
+
// },
|
60
|
+
// ],
|
61
|
+
// };
|
62
|
+
// },
|
63
|
+
// );
|
64
|
+
|
65
|
+
// jest.mock(
|
66
|
+
// '@tomei/config/privileges.json',
|
67
|
+
// () => {
|
68
|
+
// privilegeCalled++;
|
69
|
+
// return {
|
70
|
+
// Privileges: [
|
71
|
+
// {
|
72
|
+
// Code: 'Privilege2',
|
73
|
+
// Description: 'This is Privilege2',
|
74
|
+
// },
|
75
|
+
// ],
|
76
|
+
// };
|
77
|
+
// },
|
78
|
+
// );
|
79
|
+
|
80
|
+
// await Privilege.loadPrivileges(['mailer', 'config'], 'EZC');
|
81
|
+
// expect(findOrCreateMock).toBeCalledTimes(2);
|
82
|
+
// expect(systemRepositoryMock).toBeCalledTimes(1);
|
83
|
+
// expect(privilegeCalled).toEqual(2);
|
84
|
+
// });
|
85
|
+
// });
|
86
|
+
|
87
|
+
describe('SystemPrivilege', () => {
|
88
|
+
it('should be true', () => {
|
89
|
+
expect(true).toBe(true);
|
90
|
+
});
|
91
|
+
});
|
package/create-sso-user.sql
CHANGED
@@ -1,40 +1,40 @@
|
|
1
|
-
|
2
|
-
-- example to create sso-user
|
3
|
-
CREATE USER 'sso_user'@'environment' IDENTIFIED BY 'password';
|
4
|
-
|
5
|
-
-- example to grant neccesary access to run migration
|
6
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_authorization_codes TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
7
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_bearer_tokens TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
8
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_building_types TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
9
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_buildings TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
10
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_cities TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
11
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_companies TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
12
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_countries TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
13
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_departments TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
14
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_grouproleprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
15
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_groupsystemaccess TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
16
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_groupsystemprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
17
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_groupsystemrole TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
18
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_oauth_tokens TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
19
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_roles TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
20
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_sequelize_meta TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
21
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_staff_types TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
22
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_staffs TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
23
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_states TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
24
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_system_accesses TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
25
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systemprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
26
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systemrole TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
27
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systemroleprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
28
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systems TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
29
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_updated_history TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
30
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_user_roles TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
31
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_usergroup TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
32
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_users TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
33
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_usersystemprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
34
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_usersystemrole TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
35
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_UserUserGroup TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
36
|
-
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production._prisma_migrations TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
37
|
-
|
38
|
-
|
39
|
-
-- Grant user to create, alter, drop, references on the database (required for creating shadow tables)
|
1
|
+
|
2
|
+
-- example to create sso-user
|
3
|
+
CREATE USER 'sso_user'@'environment' IDENTIFIED BY 'password';
|
4
|
+
|
5
|
+
-- example to grant neccesary access to run migration
|
6
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_authorization_codes TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
7
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_bearer_tokens TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
8
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_building_types TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
9
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_buildings TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
10
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_cities TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
11
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_companies TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
12
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_countries TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
13
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_departments TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
14
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_grouproleprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
15
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_groupsystemaccess TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
16
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_groupsystemprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
17
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_groupsystemrole TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
18
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_oauth_tokens TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
19
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_roles TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
20
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_sequelize_meta TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
21
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_staff_types TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
22
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_staffs TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
23
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_states TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
24
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_system_accesses TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
25
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systemprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
26
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systemrole TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
27
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systemroleprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
28
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systems TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
29
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_updated_history TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
30
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_user_roles TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
31
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_usergroup TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
32
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_users TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
33
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_usersystemprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
34
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_usersystemrole TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
35
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_UserUserGroup TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
36
|
+
GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production._prisma_migrations TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
37
|
+
|
38
|
+
|
39
|
+
-- Grant user to create, alter, drop, references on the database (required for creating shadow tables)
|
40
40
|
GRANT CREATE, ALTER, DROP, REFERENCES ON shadow_database.* TO 'sso_user'@'localhost' WITH GRANT OPTION;
|
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
//# sourceMappingURL=login-history.repository.spec.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"login-history.repository.spec.js","sourceRoot":"","sources":["../../../../../__tests__/unit/components/login-history/login-history.repository.spec.ts"],"names":[],"mappings":""}
|
@@ -1 +1 @@
|
|
1
|
-
export {};
|
1
|
+
export {};
|