[英]Check if onChange works correctly with setState
尝试测试在测试onChange事件时ParameterLabel值是否更改。 这一行缺少一些东西:
expect(wrapper.state('ParameterLabel')))。toEqual(“ParameterLabel value”); //?
我需要在wrapper.state之后的某处添加上下文,因此它可以检查ParamenterLabel内部的值并执行更改Using Shallow - Jest / enzyme
it('Testing ParameterLabel onBlur event ', () => {
baseProps.onBlur.mockClear();
wrapper.setState({
context:{
ParameterLabel:'test',
PARAMETER_TYPE: {
ParameterTypeId:'ParameterLabel-Test'
},
PARAMETER_DATATYPE:{
DataTypeId:'test'
},
},
});
wrapper.update()
wrapper.find('input[id="ParameterLabel"]').simulate('blur',{
target: {
value:'ParameterLabel value',
id: 'ParameterLabel'
}
});
expect(wrapper.state('ParameterLabel'))).toEqual("ParameterLabel value"); //??
});
<input id='ParameterLabel' className='user-value-field' onBlur={this.updateContext} defaultValue={this.state.context.ParameterLabel}
从你的setState调用看起来,状态属性'ParameterLabel'嵌套在'context'中。
尝试在断言中搜索“context”对象,然后拉出该属性。 就像是:
expect(wrapper.state('context').ParameterLabel)).toEqual("ParameterLabel value");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.