我有一个实用程序文件,用于确定输入键,并触发文档中存在的所有按钮类型提交的单击事件。
我需要帮助来模拟输入键的按键,并使用提交类型的模拟按钮来触发他们的点击。
我正在使用jest和酶进行测试。
以下是实用程序代码:
const runSubmitEventListener = () => {
document.onkeydown = (e) => {
e = e || window.event;
if(e.key && e.key.toLowerCase() === 'enter'){
document.querySelector('button[type="submit"]') && document.querySelectorAll('button[type="submit"]').click();
}
}
}
export default{
runSubmitEventListener
}
此外,已经开始编写下面是文件的测试用例。请提出进一步的步骤,因为我是新手单元测试的新手。
import events from './events';
describe('events utility', () => {
it('should have runSubmitEventListener to be defined', () => {
expect(events.runSubmitEventListener).toBeDefined();
});
it('should trigger click of button type submit on keydown enter key', () => {
const event = new keyBoardEvent('keydown', {'key': 'enter', 'keycode': 13});
document.dispatchEvent(event);
// expect(events.runSubmitEventListener).toHaveBeenCalled();
});
});