import { Test, TestingModule } from '@nestjs/testing'; import { SseService } from './sse.service'; import { Key } from 'src/model/entitites'; describe('SseService', () => { let service: SseService; const userId = 'testuserid-54'; beforeEach(async () => { const module: TestingModule = await Test.createTestingModule({ providers: [SseService], }).compile(); service = module.get(SseService); }); it('should be defined', () => { expect(service).toBeDefined(); }); it('should register new SSE clients', () => { const res = service.register(userId); expect(service["clients"].has(userId)).toBeTruthy(); }); it('should send keys to User', () => { const sub = service.register(userId); const key = new Key(); const keyId = 'testkey-123'; key.id = keyId; sub.subscribe({ next: val => { expect(val.data).toBeTruthy(); expect(val.data[0]?.id).toBe(keyId) } }) service.sendKeysToUsers(userId, [key]); }) });