ngx-testing-tools
Version:
Makes Angular testing easier
21 lines • 4.19 kB
JavaScript
import { assertServiceCtor } from '../common/assertions/assert-service-ctor';
import { BaseTestBedFactory } from '../common/test-beds/base/base-test-bed-factory';
import { HTTP_PROVIDERS } from '../common/tools/http/http-providers';
import { buildServiceTools } from './tools/service-tools';
export class ServiceTestBedFactory extends BaseTestBedFactory {
constructor(rootService, options) {
assertServiceCtor(rootService);
super(rootService, options);
this.deferredTools = () => buildServiceTools(this, this.httpOptions);
const { httpTesting = false, verifyHttp = true, } = options;
this.httpOptions = { httpTesting, verifyHttp };
if (httpTesting)
this.provide(HTTP_PROVIDERS);
this.provide(this.described);
}
async compile() {
await super.compile();
this.injectDescribed();
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS10ZXN0LWJlZC1mYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlc3RpbmctdG9vbHMvc3JjL2xpYi9zZXJ2aWNlLXRlc3QtYmVkL3NlcnZpY2UtdGVzdC1iZWQtZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNwRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFLckUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFMUQsTUFBTSxPQUFPLHFCQUdYLFNBQVEsa0JBSVQ7SUFFQyxZQUNFLFdBQThCLEVBQzlCLE9BQThCO1FBRTlCLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQy9CLEtBQUssQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFnQlgsa0JBQWEsR0FBRyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBZGpGLE1BQU0sRUFDSixXQUFXLEdBQUcsS0FBSyxFQUNuQixVQUFVLEdBQUcsSUFBSSxHQUNsQixHQUFHLE9BQU8sQ0FBQztRQUVaLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLENBQUM7UUFFL0MsSUFBSSxXQUFXO1lBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUU5QyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBTWUsS0FBSyxDQUFDLE9BQU87UUFDM0IsTUFBTSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFzc2VydFNlcnZpY2VDdG9yIH0gZnJvbSAnLi4vY29tbW9uL2Fzc2VydGlvbnMvYXNzZXJ0LXNlcnZpY2UtY3Rvcic7XG5pbXBvcnQgeyBCYXNlVGVzdEJlZEZhY3RvcnkgfSBmcm9tICcuLi9jb21tb24vdGVzdC1iZWRzL2Jhc2UvYmFzZS10ZXN0LWJlZC1mYWN0b3J5JztcbmltcG9ydCB7IEhUVFBfUFJPVklERVJTIH0gZnJvbSAnLi4vY29tbW9uL3Rvb2xzL2h0dHAvaHR0cC1wcm92aWRlcnMnO1xuaW1wb3J0IHsgSHR0cE9wdGlvbnMgfSBmcm9tICcuLi9jb21tb24vdG9vbHMvaHR0cC9tb2RlbHMvaHR0cC1vcHRpb25zLm1vZGVsJztcbmltcG9ydCB7IEluamVjdGlvblN0b3JlIH0gZnJvbSAnLi4vY29tbW9uL3Rvb2xzL3N0b3JlL21vZGVscy9pbmplY3RlZC1zdG9yZS5tb2RlbCc7XG5pbXBvcnQgeyBTZXJ2aWNlVGVzdEJlZE9wdGlvbnMgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBTZXJ2aWNlVG9vbHMgfSBmcm9tICcuL3Rvb2xzJztcbmltcG9ydCB7IGJ1aWxkU2VydmljZVRvb2xzIH0gZnJvbSAnLi90b29scy9zZXJ2aWNlLXRvb2xzJztcblxuZXhwb3J0IGNsYXNzIFNlcnZpY2VUZXN0QmVkRmFjdG9yeTxcbiAgU2VydmljZVR5cGUsXG4gIFN0b3JlIGV4dGVuZHMgSW5qZWN0aW9uU3RvcmUgPSBJbmplY3Rpb25TdG9yZVxuPiBleHRlbmRzIEJhc2VUZXN0QmVkRmFjdG9yeTxcbiAgU2VydmljZVR5cGUsXG4gIFN0b3JlLFxuICBTZXJ2aWNlVG9vbHM8U2VydmljZVR5cGUsIFN0b3JlWydpbmplY3RlZCddPlxuPiB7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHJvb3RTZXJ2aWNlOiBUeXBlPFNlcnZpY2VUeXBlPixcbiAgICBvcHRpb25zOiBTZXJ2aWNlVGVzdEJlZE9wdGlvbnMsXG4gICkge1xuICAgIGFzc2VydFNlcnZpY2VDdG9yKHJvb3RTZXJ2aWNlKTtcbiAgICBzdXBlcihyb290U2VydmljZSwgb3B0aW9ucyk7XG5cbiAgICBjb25zdCB7XG4gICAgICBodHRwVGVzdGluZyA9IGZhbHNlLFxuICAgICAgdmVyaWZ5SHR0cCA9IHRydWUsXG4gICAgfSA9IG9wdGlvbnM7XG5cbiAgICB0aGlzLmh0dHBPcHRpb25zID0geyBodHRwVGVzdGluZywgdmVyaWZ5SHR0cCB9O1xuXG4gICAgaWYgKGh0dHBUZXN0aW5nKSB0aGlzLnByb3ZpZGUoSFRUUF9QUk9WSURFUlMpO1xuXG4gICAgdGhpcy5wcm92aWRlKHRoaXMuZGVzY3JpYmVkKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgaHR0cE9wdGlvbnM6IFJlcXVpcmVkPEh0dHBPcHRpb25zPjtcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZGVmZXJyZWRUb29scyA9ICgpID0+IGJ1aWxkU2VydmljZVRvb2xzKHRoaXMsIHRoaXMuaHR0cE9wdGlvbnMpO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBhc3luYyBjb21waWxlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHN1cGVyLmNvbXBpbGUoKTtcbiAgICB0aGlzLmluamVjdERlc2NyaWJlZCgpO1xuICB9XG59XG4iXX0=