UNPKG

@dbg-riskit/angular-testing

Version:

45 lines 5.32 kB
import { TestBed } from '@angular/core/testing'; import { ActivatedRoute, Router, RouterModule } from '@angular/router'; import { ActivatedRouteStub } from './activated.route.stub'; import { RouterLinkStubDirective } from './router.link.stub'; import { RouterOutletStubComponent } from './router.outlet.stub.component'; import { RouterStub } from './router.stub'; export function stubRouter(customOverrides) { const override = { set: { imports: [], declarations: [ RouterLinkStubDirective, RouterOutletStubComponent ], providers: [ { provide: Router, useClass: RouterStub }, { provide: ActivatedRoute, useClass: ActivatedRouteStub } ], exports: [ RouterLinkStubDirective, RouterOutletStubComponent ], entryComponents: [] } }; if (customOverrides) { if (customOverrides.add) { override.add = customOverrides.add; } if (customOverrides.set) { Object.assign(override.set, customOverrides.set); } if (customOverrides.remove) { override.remove = customOverrides.remove; } } return TestBed.overrideModule(RouterModule, override); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLm1vZHVsZS5zdHViLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGtnL2RiZy1yaXNraXQvYW5ndWxhci10ZXN0aW5nL3NyYy9saWIvc3R1YnMvcm91dGVyL3JvdXRlci5tb2R1bGUuc3R1Yi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQW1CLE9BQU8sRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxjQUFjLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFekMsTUFBTSxVQUFVLFVBQVUsQ0FBQyxlQUE0QztJQUNuRSxNQUFNLFFBQVEsR0FBK0I7UUFDekMsR0FBRyxFQUFFO1lBQ0QsT0FBTyxFQUFVLEVBQUU7WUFDbkIsWUFBWSxFQUFLO2dCQUNiLHVCQUF1QjtnQkFDdkIseUJBQXlCO2FBQzVCO1lBQ0QsU0FBUyxFQUFRO2dCQUNiO29CQUNJLE9BQU8sRUFBRyxNQUFNO29CQUNoQixRQUFRLEVBQUUsVUFBVTtpQkFDdkI7Z0JBQ0Q7b0JBQ0ksT0FBTyxFQUFHLGNBQWM7b0JBQ3hCLFFBQVEsRUFBRSxrQkFBa0I7aUJBQy9CO2FBQ0o7WUFDRCxPQUFPLEVBQVU7Z0JBQ2IsdUJBQXVCO2dCQUN2Qix5QkFBeUI7YUFDNUI7WUFDRCxlQUFlLEVBQUUsRUFBRTtTQUN0QjtLQUNKLENBQUM7SUFDRixJQUFJLGVBQWUsRUFBRTtRQUNqQixJQUFJLGVBQWUsQ0FBQyxHQUFHLEVBQUU7WUFDckIsUUFBUSxDQUFDLEdBQUcsR0FBRyxlQUFlLENBQUMsR0FBRyxDQUFDO1NBQ3RDO1FBQ0QsSUFBSSxlQUFlLENBQUMsR0FBRyxFQUFFO1lBQ3JCLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDcEQ7UUFDRCxJQUFJLGVBQWUsQ0FBQyxNQUFNLEVBQUU7WUFDeEIsUUFBUSxDQUFDLE1BQU0sR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDO1NBQzVDO0tBQ0o7SUFDRCxPQUFPLE9BQU8sQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQzFELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWV0YWRhdGFPdmVycmlkZSwgVGVzdEJlZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS90ZXN0aW5nJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFJvdXRlciwgUm91dGVyTW9kdWxlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZVN0dWJ9IGZyb20gJy4vYWN0aXZhdGVkLnJvdXRlLnN0dWInO1xuaW1wb3J0IHtSb3V0ZXJMaW5rU3R1YkRpcmVjdGl2ZX0gZnJvbSAnLi9yb3V0ZXIubGluay5zdHViJztcbmltcG9ydCB7Um91dGVyT3V0bGV0U3R1YkNvbXBvbmVudH0gZnJvbSAnLi9yb3V0ZXIub3V0bGV0LnN0dWIuY29tcG9uZW50JztcbmltcG9ydCB7Um91dGVyU3R1Yn0gZnJvbSAnLi9yb3V0ZXIuc3R1Yic7XG5cbmV4cG9ydCBmdW5jdGlvbiBzdHViUm91dGVyKGN1c3RvbU92ZXJyaWRlcz86IE1ldGFkYXRhT3ZlcnJpZGU8TmdNb2R1bGU+KTogdHlwZW9mIFRlc3RCZWQge1xuICAgIGNvbnN0IG92ZXJyaWRlOiBNZXRhZGF0YU92ZXJyaWRlPE5nTW9kdWxlPiA9IHtcbiAgICAgICAgc2V0OiB7XG4gICAgICAgICAgICBpbXBvcnRzICAgICAgICA6IFtdLFxuICAgICAgICAgICAgZGVjbGFyYXRpb25zICAgOiBbXG4gICAgICAgICAgICAgICAgUm91dGVyTGlua1N0dWJEaXJlY3RpdmUsXG4gICAgICAgICAgICAgICAgUm91dGVyT3V0bGV0U3R1YkNvbXBvbmVudFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIHByb3ZpZGVycyAgICAgIDogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZSA6IFJvdXRlcixcbiAgICAgICAgICAgICAgICAgICAgdXNlQ2xhc3M6IFJvdXRlclN0dWJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZSA6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICAgICAgICAgICAgICB1c2VDbGFzczogQWN0aXZhdGVkUm91dGVTdHViXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIGV4cG9ydHMgICAgICAgIDogW1xuICAgICAgICAgICAgICAgIFJvdXRlckxpbmtTdHViRGlyZWN0aXZlLFxuICAgICAgICAgICAgICAgIFJvdXRlck91dGxldFN0dWJDb21wb25lbnRcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBlbnRyeUNvbXBvbmVudHM6IFtdXG4gICAgICAgIH1cbiAgICB9O1xuICAgIGlmIChjdXN0b21PdmVycmlkZXMpIHtcbiAgICAgICAgaWYgKGN1c3RvbU92ZXJyaWRlcy5hZGQpIHtcbiAgICAgICAgICAgIG92ZXJyaWRlLmFkZCA9IGN1c3RvbU92ZXJyaWRlcy5hZGQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGN1c3RvbU92ZXJyaWRlcy5zZXQpIHtcbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24ob3ZlcnJpZGUuc2V0LCBjdXN0b21PdmVycmlkZXMuc2V0KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY3VzdG9tT3ZlcnJpZGVzLnJlbW92ZSkge1xuICAgICAgICAgICAgb3ZlcnJpZGUucmVtb3ZlID0gY3VzdG9tT3ZlcnJpZGVzLnJlbW92ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gVGVzdEJlZC5vdmVycmlkZU1vZHVsZShSb3V0ZXJNb2R1bGUsIG92ZXJyaWRlKTtcbn1cbiJdfQ==