我有一个由多个子组件组成的组件,每个子组件都有一个
@HostListener('document:keydown', ['$event'])
handleKeyboardDownEvent($event: KeyboardEvent): void {
if($event.key===this.keys.includes($event.key))
... }
如何编写一个单元测试来模拟按下特定键?
我试过了:
const keyboardEvent = new KeyboardEvent('keydown', {key: 'e', code: 'e', ctrlKey: true});
fixture
.nativeElement
.dispatchEvent(keyboardEvent);
但它不起作用。
重要提示: 无法单独调用每个子组件的handleKeyboardDownEvent方法; (这是我随处可见的解决方案,但我不能在这种情况下使用。)