43 lines
1.0 KiB
TypeScript
43 lines
1.0 KiB
TypeScript
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>(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]);
|
|
|
|
})
|
|
});
|