Tôi có một thành phần phản ứng (điều này được đơn giản hóa để chứng minh vấn đề):Làm thế nào để chế nhạo Phản ứng phương pháp thành phần với jest và enzyme
class MyComponent extends Component {
handleNameInput = (value) => {
this.searchValue(value);
};
searchValue = (value) => {
//Do something
}
render() {
reutrn(<div></div>)
}
}
Bây giờ tôi muốn kiểm tra rằng handleNameInput()
cuộc gọi searchValue
với giá trị cung cấp .
Để thực hiện việc này, tôi muốn tạo một jest mock function để thay thế phương thức thành phần.
Đây là trường hợp thử nghiệm của tôi cho đến nay:
it('handleNameInput',() => {
let wrapper = shallow(<MyComponent/>);
wrapper.searchDish = jest.fn();
wrapper.instance().handleNameInput('BoB');
expect(wrapper.searchDish).toBeCalledWith('BoB');
})
Nhưng tất cả tôi nhận được trong giao diện điều khiển là SyntaxError
:
Lỗi Cú pháp
at XMLHttpRequest.open (node_modules/jsdom/lib/jsdom/living/xmlhttprequest.js:458:15) at run_xhr (node_modules/browser-request/index.js:215:7) at request (node_modules/browser-request/index.js:179:10) at DishAdmin._this.searchDish (src/main/react/components/DishAdmin.js:155:68) at DishAdmin._this.handleNameInput (src/main/react/components/DishAdmin.js:94:45) at Object.<anonymous> (src/main/react/tests/DishAdmin.test.js:122:24)
Vì vậy, câu hỏi của tôi là, làm thế nào để tôi chế phương pháp thành phần với enzyme?
các lỗi cú pháp là gì? –
Nhập vào câu hỏi :) –
Nếu không biết chính xác nguồn nào là không thể giúp - tôi không thấy bất kỳ lỗi cú pháp nào trong mã bạn đã đăng. –