1- import * as sinon from 'sinon ' ;
1+ import { BadRequestException , Post } from '@nestjs/common ' ;
22import { expect } from 'chai' ;
3- import { RoutesResolver } from '../../router/routes-resolver ' ;
3+ import * as sinon from 'sinon ' ;
44import { Controller } from '../../../common/decorators/core/controller.decorator' ;
55import { Get } from '../../../common/decorators/http/request-mapping.decorator' ;
6- import { RequestMethod } from '../../../common/enums/request-method.enum' ;
7- import { ApplicationConfig } from '../../application-config' ;
8- import { BadRequestException , Post } from '@nestjs/common' ;
96import { ExpressAdapter } from '../../adapters/express-adapter' ;
7+ import { ApplicationConfig } from '../../application-config' ;
8+ import { RoutesResolver } from '../../router/routes-resolver' ;
109
1110describe ( 'RoutesResolver' , ( ) => {
1211 @Controller ( 'global' )
@@ -22,14 +21,18 @@ describe('RoutesResolver', () => {
2221 let routesResolver : RoutesResolver ;
2322 let container ;
2423 let modules : Map < string , any > ;
24+ let applicationRef ;
2525
2626 before ( ( ) => {
2727 modules = new Map ( ) ;
28+ applicationRef = {
29+ use : ( ) => ( { } ) ,
30+ setNotFoundHandler : sinon . spy ( ) ,
31+ setErrorHandler : sinon . spy ( ) ,
32+ } ;
2833 container = {
2934 getModules : ( ) => modules ,
30- getApplicationRef : ( ) => ( {
31- use : ( ) => ( { } )
32- } )
35+ getApplicationRef : ( ) => applicationRef ,
3336 } ;
3437 router = {
3538 get ( ) { } ,
@@ -38,10 +41,7 @@ describe('RoutesResolver', () => {
3841 } ) ;
3942
4043 beforeEach ( ( ) => {
41- routesResolver = new RoutesResolver (
42- container ,
43- new ApplicationConfig ( ) ,
44- ) ;
44+ routesResolver = new RoutesResolver ( container , new ApplicationConfig ( ) ) ;
4545 } ) ;
4646
4747 describe ( 'registerRouters' , ( ) => {
@@ -54,20 +54,27 @@ describe('RoutesResolver', () => {
5454 routes . set ( 'TestRoute' , routeWrapper ) ;
5555
5656 const appInstance = new ExpressAdapter ( router ) ;
57- const exploreSpy = sinon . spy ( ( routesResolver as any ) . routerBuilder , 'explore' ) ;
57+ const exploreSpy = sinon . spy (
58+ ( routesResolver as any ) . routerBuilder ,
59+ 'explore' ,
60+ ) ;
5861 const moduleName = '' ;
5962
60- sinon . stub ( ( routesResolver as any ) . routerBuilder , 'extractRouterPath' ) . callsFake ( ( ) => '' ) ;
63+ sinon
64+ . stub ( ( routesResolver as any ) . routerBuilder , 'extractRouterPath' )
65+ . callsFake ( ( ) => '' ) ;
6166 routesResolver . registerRouters ( routes , moduleName , '' , appInstance ) ;
6267
6368 expect ( exploreSpy . called ) . to . be . true ;
64- expect ( exploreSpy . calledWith (
65- routeWrapper . instance ,
66- routeWrapper . metatype ,
67- moduleName ,
68- appInstance ,
69- '' ,
70- ) ) . to . be . true ;
69+ expect (
70+ exploreSpy . calledWith (
71+ routeWrapper . instance ,
72+ routeWrapper . metatype ,
73+ moduleName ,
74+ appInstance ,
75+ '' ,
76+ ) ,
77+ ) . to . be . true ;
7178 } ) ;
7279 } ) ;
7380
@@ -110,4 +117,21 @@ describe('RoutesResolver', () => {
110117 } ) ;
111118 } ) ;
112119 } ) ;
120+
121+ describe ( 'registerNotFoundHandler' , ( ) => {
122+ it ( 'should register not found handler' , ( ) => {
123+ routesResolver . registerNotFoundHandler ( ) ;
124+
125+ expect ( applicationRef . setNotFoundHandler . called ) . to . be . true ;
126+ } ) ;
127+ } ) ;
128+
129+ describe ( 'registerExceptionHandler' , ( ) => {
130+ it ( 'should register exception handler' , ( ) => {
131+ const ref = container . getApplicationRef ( ) ;
132+ routesResolver . registerExceptionHandler ( ) ;
133+
134+ expect ( applicationRef . setErrorHandler . called ) . to . be . true ;
135+ } ) ;
136+ } ) ;
113137} ) ;
0 commit comments