get query tests
This commit is contained in:
parent
571699a66c
commit
685b63e2cc
|
@ -0,0 +1,65 @@
|
||||||
|
import { GeorouterPort } from '@modules/geography/core/application/ports/georouter.port';
|
||||||
|
import { GetRouteQuery } from '@modules/geography/core/application/queries/get-route/get-route.query';
|
||||||
|
import { GetRouteQueryHandler } from '@modules/geography/core/application/queries/get-route/get-route.query-handler';
|
||||||
|
import { Waypoint } from '@modules/geography/core/application/types/waypoint.type';
|
||||||
|
import { RouteEntity } from '@modules/geography/core/domain/route.entity';
|
||||||
|
import { Role } from '@modules/geography/core/domain/route.types';
|
||||||
|
import { GEOROUTER } from '@modules/geography/geography.di-tokens';
|
||||||
|
import { Test, TestingModule } from '@nestjs/testing';
|
||||||
|
|
||||||
|
const originWaypoint: Waypoint = {
|
||||||
|
position: 0,
|
||||||
|
lon: 48.689445,
|
||||||
|
lat: 6.17651,
|
||||||
|
};
|
||||||
|
const destinationWaypoint: Waypoint = {
|
||||||
|
position: 1,
|
||||||
|
lon: 48.8566,
|
||||||
|
lat: 2.3522,
|
||||||
|
};
|
||||||
|
|
||||||
|
const mockGeorouter: GeorouterPort = {
|
||||||
|
routes: jest.fn(),
|
||||||
|
};
|
||||||
|
|
||||||
|
describe('Get route query handler', () => {
|
||||||
|
let getRoutequeryHandler: GetRouteQueryHandler;
|
||||||
|
|
||||||
|
beforeAll(async () => {
|
||||||
|
const module: TestingModule = await Test.createTestingModule({
|
||||||
|
providers: [
|
||||||
|
{
|
||||||
|
provide: GEOROUTER,
|
||||||
|
useValue: mockGeorouter,
|
||||||
|
},
|
||||||
|
GetRouteQueryHandler,
|
||||||
|
],
|
||||||
|
}).compile();
|
||||||
|
|
||||||
|
getRoutequeryHandler =
|
||||||
|
module.get<GetRouteQueryHandler>(GetRouteQueryHandler);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should be defined', () => {
|
||||||
|
expect(getRoutequeryHandler).toBeDefined();
|
||||||
|
});
|
||||||
|
|
||||||
|
describe('execution', () => {
|
||||||
|
it('should get a route for a driver only', async () => {
|
||||||
|
const getRoutequery = new GetRouteQuery(
|
||||||
|
[Role.DRIVER],
|
||||||
|
[originWaypoint, destinationWaypoint],
|
||||||
|
{
|
||||||
|
detailedDistance: false,
|
||||||
|
detailedDuration: false,
|
||||||
|
points: true,
|
||||||
|
},
|
||||||
|
);
|
||||||
|
RouteEntity.create = jest.fn().mockReturnValue({
|
||||||
|
id: '047a6ecf-23d4-4d3e-877c-3225d560a8da',
|
||||||
|
});
|
||||||
|
const result = await getRoutequeryHandler.execute(getRoutequery);
|
||||||
|
expect(result.id).toBe('047a6ecf-23d4-4d3e-877c-3225d560a8da');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
Loading…
Reference in New Issue