UNPKG

@lxdhub/api

Version:

Display, search and copy LXD-images using a web interface.

56 lines (48 loc) 1.59 kB
import { Remote } from '@lxdhub/db'; import { Test } from '@nestjs/testing'; import { RemoteDto } from '../dtos'; import { RemoteFactory } from './remote.factory'; /** * Test cases for the RemotFactory */ describe('RemoteFactory', () => { let remoteFactory: RemoteFactory; let remotes = []; let dtos = []; beforeEach(async () => { // Mock Remote Module const module = await Test.createTestingModule({ providers: [ RemoteFactory ] }).compile(); // Get the RemoteFactory remoteFactory = module.get<RemoteFactory>(RemoteFactory); }); beforeEach(() => { const remote = new Remote(); remote.id = 1; remote.name = 'images'; remote.protocol = 'lxd'; remote.public = true; remote.readonly = true; remote.serverUrl = 'https://images.efiks.ovh:8443'; remotes = [remote]; const remoteDto = new RemoteDto(); remoteDto.id = 1; remoteDto.name = 'images'; remoteDto.protocol = 'lxd'; remoteDto.public = true; remoteDto.readonly = true; remoteDto.serverUrl = 'https://images.efiks.ovh:8443'; dtos = [remoteDto]; }); describe('entitiesToDto', () => { it('should return RemoteDto-Array', async () => { expect(await remoteFactory.entitiesToDto(remotes)).toEqual(dtos); }); it('should return RemoteDto', async () => { expect(await remoteFactory.entityToDto(remotes[0])).toEqual(dtos[0]); }); }); });