ngx-testing-tools
Version:
Makes Angular testing easier
20 lines • 4.19 kB
JavaScript
import { assertComponentCtor } from '../common/assertions/assert-component-ctor';
import { RendererTestBedFactory } from '../common/test-beds/renderer/renderer-test-bed-factory';
import { HTTP_PROVIDERS } from '../common/tools/http/http-providers';
import { buildComponentTools } from './tools/component-tools';
export class ComponentTestBedFactory extends RendererTestBedFactory {
constructor(rootComponent, options) {
assertComponentCtor(rootComponent);
super(rootComponent, rootComponent, options);
this.deferredTools = () => buildComponentTools(this, this.httpOptions);
const { httpTesting = false, verifyHttp = true, } = options;
if (httpTesting)
this.provide(HTTP_PROVIDERS);
this.httpOptions = { httpTesting, verifyHttp };
}
async compile() {
await super.compile();
this.createHostFixture();
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LXRlc3QtYmVkLWZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVzdGluZy10b29scy9zcmMvbGliL2NvbXBvbmVudC10ZXN0LWJlZC9jb21wb25lbnQtdGVzdC1iZWQtZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNqRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUNoRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFLckUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsTUFBTSxPQUFPLHVCQUdYLFNBQVEsc0JBQThGO0lBRXRHLFlBQ0UsYUFBa0MsRUFDbEMsT0FBZ0M7UUFFaEMsbUJBQW1CLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDbkMsS0FBSyxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFjNUIsa0JBQWEsR0FBRyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBWm5GLE1BQU0sRUFDSixXQUFXLEdBQUcsS0FBSyxFQUNuQixVQUFVLEdBQUcsSUFBSSxHQUNsQixHQUFHLE9BQU8sQ0FBQztRQUVaLElBQUksV0FBVztZQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFOUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUNqRCxDQUFDO0lBTWUsS0FBSyxDQUFDLE9BQU87UUFDM0IsTUFBTSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgYXNzZXJ0Q29tcG9uZW50Q3RvciB9IGZyb20gJy4uL2NvbW1vbi9hc3NlcnRpb25zL2Fzc2VydC1jb21wb25lbnQtY3Rvcic7XG5pbXBvcnQgeyBSZW5kZXJlclRlc3RCZWRGYWN0b3J5IH0gZnJvbSAnLi4vY29tbW9uL3Rlc3QtYmVkcy9yZW5kZXJlci9yZW5kZXJlci10ZXN0LWJlZC1mYWN0b3J5JztcbmltcG9ydCB7IEhUVFBfUFJPVklERVJTIH0gZnJvbSAnLi4vY29tbW9uL3Rvb2xzL2h0dHAvaHR0cC1wcm92aWRlcnMnO1xuaW1wb3J0IHsgSHR0cE9wdGlvbnMgfSBmcm9tICcuLi9jb21tb24vdG9vbHMvaHR0cC9tb2RlbHMvaHR0cC1vcHRpb25zLm1vZGVsJztcbmltcG9ydCB7IEluamVjdGlvblN0b3JlIH0gZnJvbSAnLi4vY29tbW9uL3Rvb2xzL3N0b3JlL21vZGVscy9pbmplY3RlZC1zdG9yZS5tb2RlbCc7XG5pbXBvcnQgeyBDb21wb25lbnRUZXN0QmVkT3B0aW9ucyB9IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IENvbXBvbmVudFRvb2xzIH0gZnJvbSAnLi90b29scyc7XG5pbXBvcnQgeyBidWlsZENvbXBvbmVudFRvb2xzIH0gZnJvbSAnLi90b29scy9jb21wb25lbnQtdG9vbHMnO1xuXG5leHBvcnQgY2xhc3MgQ29tcG9uZW50VGVzdEJlZEZhY3Rvcnk8XG4gIENvbXBvbmVudFR5cGUsXG4gIFN0b3JlIGV4dGVuZHMgSW5qZWN0aW9uU3RvcmUgPSBJbmplY3Rpb25TdG9yZVxuPiBleHRlbmRzIFJlbmRlcmVyVGVzdEJlZEZhY3Rvcnk8Q29tcG9uZW50VHlwZSwgU3RvcmUsIENvbXBvbmVudFRvb2xzPENvbXBvbmVudFR5cGUsIFN0b3JlWydpbmplY3RlZCddPj4ge1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICByb290Q29tcG9uZW50OiBUeXBlPENvbXBvbmVudFR5cGU+LFxuICAgIG9wdGlvbnM6IENvbXBvbmVudFRlc3RCZWRPcHRpb25zLFxuICApIHtcbiAgICBhc3NlcnRDb21wb25lbnRDdG9yKHJvb3RDb21wb25lbnQpO1xuICAgIHN1cGVyKHJvb3RDb21wb25lbnQsIHJvb3RDb21wb25lbnQsIG9wdGlvbnMpO1xuXG4gICAgY29uc3Qge1xuICAgICAgaHR0cFRlc3RpbmcgPSBmYWxzZSxcbiAgICAgIHZlcmlmeUh0dHAgPSB0cnVlLFxuICAgIH0gPSBvcHRpb25zO1xuXG4gICAgaWYgKGh0dHBUZXN0aW5nKSB0aGlzLnByb3ZpZGUoSFRUUF9QUk9WSURFUlMpO1xuXG4gICAgdGhpcy5odHRwT3B0aW9ucyA9IHsgaHR0cFRlc3RpbmcsIHZlcmlmeUh0dHAgfTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgaHR0cE9wdGlvbnM6IFJlcXVpcmVkPEh0dHBPcHRpb25zPjtcblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZGVmZXJyZWRUb29scyA9ICgpID0+IGJ1aWxkQ29tcG9uZW50VG9vbHModGhpcywgdGhpcy5odHRwT3B0aW9ucyk7XG5cbiAgcHVibGljIG92ZXJyaWRlIGFzeW5jIGNvbXBpbGUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgc3VwZXIuY29tcGlsZSgpO1xuICAgIHRoaXMuY3JlYXRlSG9zdEZpeHR1cmUoKTtcbiAgfVxufVxuIl19