diff options
Diffstat (limited to 'vid-webpack-master/src/app/shared/pipes/safe/safe.pipe.spec.ts')
-rw-r--r-- | vid-webpack-master/src/app/shared/pipes/safe/safe.pipe.spec.ts | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/vid-webpack-master/src/app/shared/pipes/safe/safe.pipe.spec.ts b/vid-webpack-master/src/app/shared/pipes/safe/safe.pipe.spec.ts new file mode 100644 index 000000000..f0471731e --- /dev/null +++ b/vid-webpack-master/src/app/shared/pipes/safe/safe.pipe.spec.ts @@ -0,0 +1,60 @@ +import {SafePipe} from "./safe.pipe"; +import {DomSanitizer} from "@angular/platform-browser"; +import {getTestBed, TestBed} from "@angular/core/testing"; + + +describe('Safe pipe', () => { + + let injector; + let pipe: SafePipe; + let sanitizer: DomSanitizer; + + beforeAll(done => (async () => { + TestBed.configureTestingModule({ + providers: [SafePipe] + }); + await TestBed.compileComponents(); + + injector = getTestBed(); + sanitizer = injector.get(DomSanitizer); + pipe = injector.get(SafePipe); + + })().then(done).catch(done.fail)); + + test('safe pipe should return Safe object', () => { + let options = [ + { + value: 'value', + type: 'html', + func: 'bypassSecurityTrustHtml' + }, + { + value: 'value', + type: 'style', + func: 'bypassSecurityTrustStyle' + }, + { + value: 'value', + type: 'script', + func: 'bypassSecurityTrustScript' + }, + { + value: 'value', + type: 'url', + func: 'bypassSecurityTrustUrl' + }, + { + value: 'value', + type: 'resourceUrl', + func: 'bypassSecurityTrustResourceUrl' + } + ]; + + for (let option of options) { + jest.spyOn(sanitizer, <any>option.func); + pipe.transform(option.value, option.type); + expect(sanitizer[option.func]).toHaveBeenCalledWith(option.value); + } + }); + +}); |