UNPKG

@tomei/sso

Version:
48 lines (44 loc) 1.59 kB
import { IUserSession } from '../../../src/interfaces/user-session.interface'; import { SessionService } from '../../../src/session/session.service'; require('dotenv').config() describe('session.service', () => { it('should return session service when instansiated', async () => { const sessionService = await SessionService.init(); expect(sessionService).toBeDefined(); }); it('should able to write session data', async () => { const data: IUserSession = { systemLogins: [ { id: '1', code: 'EZC', sessionId: 'test1', privileges: ['PRIVILEGE1', 'PRIVILEGE2'], }, ], }; const sessionService = await SessionService.init(); await sessionService.setUserSession("1", data) const result = await sessionService.retrieveUserSession("1"); expect(result).toEqual(data); }); it('should able to refresh session data', async () => { const setUserSession = jest.spyOn(SessionService.prototype, 'setUserSession'); const retrieveUserSession = jest.spyOn(SessionService.prototype, 'retrieveUserSession'); const data: IUserSession = { systemLogins: [ { id: '1', code: 'EZC', sessionId: 'test1', privileges: ['PRIVILEGE1', 'PRIVILEGE2'], }, ], }; const sessionService = await SessionService.init(); await sessionService.setUserSession("1", data) await sessionService.refreshDuration("1"); expect(setUserSession).toBeCalledTimes(2); expect(retrieveUserSession).toBeCalledTimes(1); }); });