ngx-testing-tools
Version:
Makes Angular testing easier
24 lines • 3.76 kB
JavaScript
import { inject, Injectable } from '@angular/core';
import { TestBed } from '@angular/core/testing';
import { INTERCEPTOR_INFO } from './interceptor-info.token';
import * as i0 from "@angular/core";
export class InterceptorProxy {
constructor() {
this.info = inject(INTERCEPTOR_INFO);
this.isRootCtor = this.info.isRootCtor;
this.instance = (this.isRootCtor)
? inject(this.info.rootInterceptor)
: this.info.rootInterceptor;
}
intercept(req, next) {
return (this.isRootCtor)
? this.instance.intercept(req, next)
: TestBed.runInInjectionContext(() => this.instance(req, next.handle));
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: InterceptorProxy, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: InterceptorProxy }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: InterceptorProxy, decorators: [{
type: Injectable
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjZXB0b3ItcHJveHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVzdGluZy10b29scy9zcmMvbGliL2ludGVyY2VwdG9yLXRlc3QtYmVkL3Byb3h5L2ludGVyY2VwdG9yLXByb3h5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQW1CLE1BQU0sMEJBQTBCLENBQUM7O0FBRzdFLE1BQU0sT0FBTyxnQkFBZ0I7SUFEN0I7UUFHVSxTQUFJLEdBQW9CLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRWpELGVBQVUsR0FBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUU1QyxhQUFRLEdBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ3RDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUM7WUFDbkMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDO0tBTy9CO0lBTFEsU0FBUyxDQUFDLEdBQXlCLEVBQUUsSUFBaUI7UUFDM0QsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDdEIsQ0FBQyxDQUFFLElBQUksQ0FBQyxRQUE0QixDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDO1lBQ3pELENBQUMsQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUMsR0FBRyxFQUFFLENBQUUsSUFBSSxDQUFDLFFBQThCLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ2xHLENBQUM7OEdBZFUsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyLCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBJbnRlcmNlcHRvckZuLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGVzdEJlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvdGVzdGluZyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJTlRFUkNFUFRPUl9JTkZPLCBJbnRlcmNlcHRvckluZm8gfSBmcm9tICcuL2ludGVyY2VwdG9yLWluZm8udG9rZW4nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSW50ZXJjZXB0b3JQcm94eSBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG5cbiAgcHJpdmF0ZSBpbmZvOiBJbnRlcmNlcHRvckluZm8gPSBpbmplY3QoSU5URVJDRVBUT1JfSU5GTyk7XG5cbiAgcHJpdmF0ZSBpc1Jvb3RDdG9yOiBib29sZWFuID0gdGhpcy5pbmZvLmlzUm9vdEN0b3I7XG5cbiAgcHVibGljIGluc3RhbmNlOiBhbnkgPSAodGhpcy5pc1Jvb3RDdG9yKVxuICAgID8gaW5qZWN0KHRoaXMuaW5mby5yb290SW50ZXJjZXB0b3IpXG4gICAgOiB0aGlzLmluZm8ucm9vdEludGVyY2VwdG9yO1xuXG4gIHB1YmxpYyBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDx1bmtub3duPj4ge1xuICAgIHJldHVybiAodGhpcy5pc1Jvb3RDdG9yKVxuICAgICAgPyAodGhpcy5pbnN0YW5jZSBhcyBIdHRwSW50ZXJjZXB0b3IpLmludGVyY2VwdChyZXEsIG5leHQpXG4gICAgICA6IFRlc3RCZWQucnVuSW5JbmplY3Rpb25Db250ZXh0KCgpID0+ICh0aGlzLmluc3RhbmNlIGFzIEh0dHBJbnRlcmNlcHRvckZuKShyZXEsIG5leHQuaGFuZGxlKSk7XG4gIH1cbn1cbiJdfQ==