Я пытаюсь получить 100% охват в моем тесте, и этот тест проходит, но затем он все еще выделяет функцию render.onload
Component.jsx:
handleInputChange = (evt) => {
evt.preventDefault();
const { target } = evt;
let value;
let self = this;
const reader = new FileReader();
reader.onload = function (evt) {
self.setState({
previewPicture: evt.target.result,
error: null
});
};
reader.readAsDataURL(target.files[0]);
value = target.files[0];
const name = target.name;
this.setState({
[name]: value
});
};
Тест:
const evt = {
target: {
type: 'file',
name: 'profilePicture',
files: [{ name: 'testName' }]
},
preventDefault: jest.fn()
};
const component = mount(<Component {...props} />).instance();
evt.target.files[0] = new Blob([evt.target.files[0]], {type : 'img/png'});
component.handleInputChange(evt);
expect(component.state.profilePicture).toEqual(file);
});
Я хочу, чтобы все были рассмотрены в тесте, но я не знаю, протестировать FileRader