UNPKG

@dbg-riskit/angular-testing

Version:

48 lines 5.71 kB
import { TestBed } from '@angular/core/testing'; import { CommonViewModule, NoopAnimationsCommonViewModule } from '@dbg-riskit/angular-view'; import { COMPILE_TIMEOUT_INTERVAL } from './environment'; export function disableMaterialAnimations(ngModule) { TestBed.overrideModule(ngModule, { remove: { imports: [CommonViewModule] }, add: { imports: [NoopAnimationsCommonViewModule] } }); } export function compileTestBed(compileFunction, destroyFunction, stubMatchMedia = true) { let matchMedia; beforeEach((done) => { if (stubMatchMedia) { matchMedia = window.matchMedia; window.matchMedia = fakeMatchMedia(); } compileFunction() .then(done) .catch((err) => { done.fail(err); }); }, COMPILE_TIMEOUT_INTERVAL); afterEach(() => { if (destroyFunction) { destroyFunction(); } if (stubMatchMedia) { window.matchMedia = matchMedia; } }, COMPILE_TIMEOUT_INTERVAL); } function fakeMatchMedia(matches = false) { return (mediaQuery) => ({ matches, media: mediaQuery, onchange: () => null, addListener: () => null, addEventListener: () => null, removeListener: () => null, removeEventListener: () => null, dispatchEvent: () => true }); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wa2cvZGJnLXJpc2tpdC9hbmd1bGFyLXRlc3Rpbmcvc3JjL2xpYi91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDOUMsT0FBTyxFQUFDLGdCQUFnQixFQUFFLDhCQUE4QixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDMUYsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXZELE1BQU0sVUFBVSx5QkFBeUIsQ0FBQyxRQUFtQjtJQUN6RCxPQUFPLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRTtRQUM3QixNQUFNLEVBQUU7WUFDSixPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztTQUM5QjtRQUNELEdBQUcsRUFBSztZQUNKLE9BQU8sRUFBRSxDQUFDLDhCQUE4QixDQUFDO1NBQzVDO0tBQ0osQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsZUFBbUMsRUFBRSxlQUE0QixFQUNqRSxjQUFjLEdBQUcsSUFBSTtJQUVoRCxJQUFJLFVBQWUsQ0FBQztJQUNwQixVQUFVLENBQUMsQ0FBQyxJQUFZLEVBQUUsRUFBRTtRQUN4QixJQUFJLGNBQWMsRUFBRTtZQUNoQixVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztZQUMvQixNQUFNLENBQUMsVUFBVSxHQUFHLGNBQWMsRUFBRSxDQUFDO1NBQ3hDO1FBRUQsZUFBZSxFQUFFO2FBQ1osSUFBSSxDQUFDLElBQUksQ0FBQzthQUNWLEtBQUssQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztJQUU3QixTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ1gsSUFBSSxlQUFlLEVBQUU7WUFDakIsZUFBZSxFQUFFLENBQUM7U0FDckI7UUFFRCxJQUFJLGNBQWMsRUFBRTtZQUNoQixNQUFNLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztTQUNsQztJQUNMLENBQUMsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO0FBQ2pDLENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxPQUFPLEdBQUcsS0FBSztJQUNuQyxPQUFPLENBQUMsVUFBa0IsRUFBa0IsRUFBRSxDQUFDLENBQUM7UUFDNUMsT0FBTztRQUNQLEtBQUssRUFBZ0IsVUFBVTtRQUMvQixRQUFRLEVBQWEsR0FBRyxFQUFFLENBQUMsSUFBVztRQUN0QyxXQUFXLEVBQVUsR0FBRyxFQUFFLENBQUMsSUFBVztRQUN0QyxnQkFBZ0IsRUFBSyxHQUFHLEVBQUUsQ0FBQyxJQUFXO1FBQ3RDLGNBQWMsRUFBTyxHQUFHLEVBQUUsQ0FBQyxJQUFXO1FBQ3RDLG1CQUFtQixFQUFFLEdBQUcsRUFBRSxDQUFDLElBQVc7UUFDdEMsYUFBYSxFQUFRLEdBQUcsRUFBRSxDQUFDLElBQUk7S0FDbEMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHlwZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1Rlc3RCZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvdGVzdGluZyc7XG5pbXBvcnQge0NvbW1vblZpZXdNb2R1bGUsIE5vb3BBbmltYXRpb25zQ29tbW9uVmlld01vZHVsZX0gZnJvbSAnQGRiZy1yaXNraXQvYW5ndWxhci12aWV3JztcbmltcG9ydCB7Q09NUElMRV9USU1FT1VUX0lOVEVSVkFMfSBmcm9tICcuL2Vudmlyb25tZW50JztcblxuZXhwb3J0IGZ1bmN0aW9uIGRpc2FibGVNYXRlcmlhbEFuaW1hdGlvbnMobmdNb2R1bGU6IFR5cGU8YW55Pikge1xuICAgIFRlc3RCZWQub3ZlcnJpZGVNb2R1bGUobmdNb2R1bGUsIHtcbiAgICAgICAgcmVtb3ZlOiB7XG4gICAgICAgICAgICBpbXBvcnRzOiBbQ29tbW9uVmlld01vZHVsZV1cbiAgICAgICAgfSxcbiAgICAgICAgYWRkICAgOiB7XG4gICAgICAgICAgICBpbXBvcnRzOiBbTm9vcEFuaW1hdGlvbnNDb21tb25WaWV3TW9kdWxlXVxuICAgICAgICB9XG4gICAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb21waWxlVGVzdEJlZChjb21waWxlRnVuY3Rpb246ICgpID0+IFByb21pc2U8YW55PiwgZGVzdHJveUZ1bmN0aW9uPzogKCkgPT4gdm9pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHViTWF0Y2hNZWRpYSA9IHRydWUpIHtcblxuICAgIGxldCBtYXRjaE1lZGlhOiBhbnk7XG4gICAgYmVmb3JlRWFjaCgoZG9uZTogRG9uZUZuKSA9PiB7XG4gICAgICAgIGlmIChzdHViTWF0Y2hNZWRpYSkge1xuICAgICAgICAgICAgbWF0Y2hNZWRpYSA9IHdpbmRvdy5tYXRjaE1lZGlhO1xuICAgICAgICAgICAgd2luZG93Lm1hdGNoTWVkaWEgPSBmYWtlTWF0Y2hNZWRpYSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29tcGlsZUZ1bmN0aW9uKClcbiAgICAgICAgICAgIC50aGVuKGRvbmUpXG4gICAgICAgICAgICAuY2F0Y2goKGVycjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgZG9uZS5mYWlsKGVycik7XG4gICAgICAgICAgICB9KTtcbiAgICB9LCBDT01QSUxFX1RJTUVPVVRfSU5URVJWQUwpO1xuXG4gICAgYWZ0ZXJFYWNoKCgpID0+IHtcbiAgICAgICAgaWYgKGRlc3Ryb3lGdW5jdGlvbikge1xuICAgICAgICAgICAgZGVzdHJveUZ1bmN0aW9uKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc3R1Yk1hdGNoTWVkaWEpIHtcbiAgICAgICAgICAgIHdpbmRvdy5tYXRjaE1lZGlhID0gbWF0Y2hNZWRpYTtcbiAgICAgICAgfVxuICAgIH0sIENPTVBJTEVfVElNRU9VVF9JTlRFUlZBTCk7XG59XG5cbmZ1bmN0aW9uIGZha2VNYXRjaE1lZGlhKG1hdGNoZXMgPSBmYWxzZSkge1xuICAgIHJldHVybiAobWVkaWFRdWVyeTogc3RyaW5nKTogTWVkaWFRdWVyeUxpc3QgPT4gKHtcbiAgICAgICAgbWF0Y2hlcyxcbiAgICAgICAgbWVkaWEgICAgICAgICAgICAgIDogbWVkaWFRdWVyeSxcbiAgICAgICAgb25jaGFuZ2UgICAgICAgICAgIDogKCkgPT4gbnVsbCBhcyBhbnksXG4gICAgICAgIGFkZExpc3RlbmVyICAgICAgICA6ICgpID0+IG51bGwgYXMgYW55LFxuICAgICAgICBhZGRFdmVudExpc3RlbmVyICAgOiAoKSA9PiBudWxsIGFzIGFueSxcbiAgICAgICAgcmVtb3ZlTGlzdGVuZXIgICAgIDogKCkgPT4gbnVsbCBhcyBhbnksXG4gICAgICAgIHJlbW92ZUV2ZW50TGlzdGVuZXI6ICgpID0+IG51bGwgYXMgYW55LFxuICAgICAgICBkaXNwYXRjaEV2ZW50ICAgICAgOiAoKSA9PiB0cnVlXG4gICAgfSk7XG59XG4iXX0=