W3cubDocs

/Angular 12

RouterTestingModule

ngmodule

Sets up the router to be used for testing.

See more...

class RouterTestingModule {
  static withRoutes(routes: Route[], config?: ExtraOptions): ModuleWithProviders<RouterTestingModule>
}

Description

The modules sets up the router to be used for testing. It provides spy implementations of Location, LocationStrategy, and NgModuleFactoryLoader.

Further information is available in the Usage Notes...

Static methods

static withRoutes(routes: Route[], config?: ExtraOptions): ModuleWithProviders<RouterTestingModule>

Parameters
routes Route[]
config ExtraOptions

Optional. Default is undefined.

Returns

ModuleWithProviders<RouterTestingModule>

Providers

Provider
ROUTER_PROVIDERS
{ provide: Location, useClass: SpyLocation }
{ provide: LocationStrategy, useClass: MockLocationStrategy }
{ provide: NgModuleFactoryLoader, useClass: SpyNgModuleFactoryLoader }
{
    provide: Router,
    useFactory: setupTestingRouter,
    deps: [
        UrlSerializer, ChildrenOutletContexts, Location, NgModuleFactoryLoader, Compiler, Injector,
        ROUTES, ROUTER_CONFIGURATION, [UrlHandlingStrategy, new Optional()],
        [RouteReuseStrategy, new Optional()]
    ]
}
{ provide: PreloadingStrategy, useExisting: NoPreloading }
provideRoutes([])

Usage notes

Example

beforeEach(() => {
  TestBed.configureTestingModule({
    imports: [
      RouterTestingModule.withRoutes(
        [{path: '', component: BlankCmp}, {path: 'simple', component: SimpleCmp}]
      )
    ]
  });
});

© 2010–2021 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v12.angular.io/api/router/testing/RouterTestingModule