1
У меня возникла какая-то странная проблема с набором тестов, который я установил.Angular2 Unit Testing SpyOn с кармой и Jasmin
Шаблон:
<a href="#" (click)="blop($event)"></a>
HomeComponent:
export class HomeComponent {
public test: boolean;
public constructor() {
this.test = false;
}
public blop($event) {
this.test = true;
}
}
Тест:
describe('Home Component : ',() => {
var builder;
var app;
beforeEach(inject([HomeComponent, TestComponentBuilder], (app, tcb) => {
builder = tcb;
app = app;
}));
it('should return test = true after click...', async(() => {
builder.createAsync(HomeComponent).then((fixture: ComponentFixture<HomeComponent>) => {
spyOn(fixture.componentInstance, 'blop');
fixture.detectChanges();
var compiled = fixture.debugElement.nativeElement;
compiled.querySelector('a').click();
expect(fixture.componentInstance.test).toBe(true);
expect(fixture.componentInstance.blop).toHaveBeenCalled();
});
}));
});
я получаю выход ошибки на: Ожидаемая ложь, чтобы быть правдой.
НО, если я прокомментирую шпиона и последнее ожидание, оно работает.
У вас есть идеи, что я делаю неправильно?
Благодаря
M
Не могли бы вы дать более подробную информацию о вашем 'HomeComponent' компонента? Благодаря! –