Added testing utils functions

This commit is contained in:
Giuseppe Digilio
2018-07-11 18:42:45 +02:00
parent 10144971f9
commit 683c2f2f6b
13 changed files with 55 additions and 120 deletions

View File

@@ -0,0 +1,32 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
/**
* Returns true if a Native Element has a specified css class.
*
* @param element
* the Native Element
* @param className
* the class name to find
*/
export const hasClass = (element: any, className: string): boolean => {
const classes = element.getAttribute('class');
return classes.split(' ').indexOf(className) !== -1;
};
/**
* Creates an instance of a component and returns test fixture.
*
* @param html
* the component's template as html
* @param type
* the type of the component to instantiate
*/
export const createTestComponent = <T>(html: string, type: { new(...args: any[]): T }): ComponentFixture<T> => {
TestBed.overrideComponent(type, {
set: {template: html}
});
const fixture = TestBed.createComponent(type);
fixture.detectChanges();
return fixture as ComponentFixture<T>;
};