51 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| /**
 | |
|  * @license
 | |
|  * Copyright Google Inc. All Rights Reserved.
 | |
|  *
 | |
|  * Use of this source code is governed by an MIT-style license that can be
 | |
|  * found in the LICENSE file at https://angular.io/license
 | |
|  */
 | |
| export function forceReflow() {
 | |
|   (document.body as any)['_reflow'] = document.body.clientWidth;
 | |
| }
 | |
| 
 | |
| export function makeAnimationEvent(
 | |
|     startOrEnd: 'start' | 'end', animationName: string, elapsedTime: number, timestamp?: number) {
 | |
|   const e = new AnimationEvent('animation' + startOrEnd, {animationName, elapsedTime});
 | |
|   if (timestamp) {
 | |
|     (e as any)._ngTestManualTimestamp = timestamp;
 | |
|   }
 | |
|   return e;
 | |
| }
 | |
| 
 | |
| export function supportsAnimationEventCreation() {
 | |
|   let supported = false;
 | |
|   try {
 | |
|     makeAnimationEvent('end', 'test', 0);
 | |
|     supported = true;
 | |
|   } catch {
 | |
|   }
 | |
|   return supported;
 | |
| }
 | |
| 
 | |
| export function findKeyframeDefinition(sheet: any): any|null {
 | |
|   return sheet.cssRules[0] || null;
 | |
| }
 | |
| 
 | |
| export function createElement() {
 | |
|   return document.createElement('div');
 | |
| }
 | |
| 
 | |
| export function assertStyle(element: any, prop: string, value: string) {
 | |
|   expect(element.style[prop] || '').toEqual(value);
 | |
| }
 | |
| 
 | |
| export function assertElementExistsInDom(element: any, yes?: boolean) {
 | |
|   const exp = expect(element.parentNode);
 | |
|   if (yes) {
 | |
|     exp.toBeTruthy();
 | |
|   } else {
 | |
|     exp.toBeFalsy();
 | |
|   }
 | |
| }
 |