使用angular2测试hammerjs事件

kfa*_*kfa 5 unit-testing hammer.js angular

我正在构建一个测试套件,并尝试覆盖100%的代码.事情是,我在平移时有回调函数.有没有人如何在angular2上使用karma和jasmine正确测试hammerjs事件?

HTML

<div (pan)="panning($event)" id="square">
Run Code Online (Sandbox Code Playgroud)

打字稿

public swiper($event) {
  let e = $event;
  let top = e.center.x - (e.target.clientHeight/2);
  let left = e.center.y - (e.target.clientWidth/2);
  e.target.style.transform = 'translate3d('+ top +'px, '+ left +'px, 0px)';
}
Run Code Online (Sandbox Code Playgroud)

谢谢.

中号

Moi*_*Moi 5

您应该能够使用这个

it('should call panning on pan', (async() => {
    fixture.debugElement.query(By.css('#square')).triggerEventHandler("pan", myNiceEvent)
    fixture.detectChanges()
    fixture.whenStable().then(testMyChanges)
}
Run Code Online (Sandbox Code Playgroud)

我知道已经有很长时间了,但是我自己为Angular v5.2.0一直在挣扎。

希望这会帮助某人;)