Reactjs redux表单单元测试字段值

Reactjs redux表单单元测试字段值,reactjs,unit-testing,redux,redux-form,enzyme,Reactjs,Unit Testing,Redux,Redux Form,Enzyme,我用酶来测试redux表单字段的值取决于道具。如何在传递新道具时测试字段值。似乎字段的组件属性中的值。无论如何,当设置新道具时,如何从redux表单测试字段。是可以测试的。看起来redux表单测试字段值,我们不再需要它了,是吗 <Field component={renderTextField} name='name' label={<FormattedMessage id='name' />} /> describe('EditDevice',

我用酶来测试redux表单字段的值取决于道具。如何在传递新道具时测试字段值。似乎字段的组件属性中的值。无论如何,当设置新道具时,如何从redux表单测试字段。是可以测试的。看起来redux表单测试字段值,我们不再需要它了,是吗

<Field
    component={renderTextField}
    name='name'
    label={<FormattedMessage id='name' />}
/>

describe('EditDevice', () => {
    let page, push, handleSubmit, init
    let skip = {}
    let update = sinon.stub().resolves({success: true})
    let device = {
        deviceType: deviceTypes.MiAccessPoint,
        deviceId: 1,
        lastAliveMessage: 'some text',
        miConfiguration: {
            fieldRange: '',
            doorConfiguration: {},
        },
    }

    beforeEach(() => page = shallow(<EditDevice
        update={update}
        handleSubmit={sinon.spy()}
        deviceId={deviceId}
        history={{push: push = sinon.spy()}}
        skip={skip}
        initialValues={device}
    />))



  it.only('should update device fields if isLoadingInProgress turned from true to false on receiving new props', async () => {
        const device = {
            name: 'new name',
            deviceType: deviceTypes.Tag,
            version: 'new version',
            deviceStatus: 'online',
        }

        page.setProps({isLoadingInProgress: true})
        page.setProps({isLoadingInProgress: false, initialValues:{...device}})
        page.update()
        page.find(Field).findWhere(x => x.props().name === 'name').props().value.should.be.equal(device.name)

    })

描述('EditDevice',()=>{
让page、push、handleSubmit、init
让我们跳过={}
让update=sinon.stub().resolves({success:true})
让设备={
deviceType:deviceType.MiAccessPoint,
设备ID:1,
lastAliveMessage:“一些文本”,
微配置:{
字段范围:“”,
门配置:{},
},
}
之前(()=>page=shallow())
it.only('如果IsLoadingProgress在接收新道具时从true变为false,则应更新设备字段',async()=>{
常数设备={
名称:'新名称',
deviceType:deviceTypes.Tag,
版本:'新版本',
deviceStatus:“在线”,
}
page.setProps({IsLoadingProgress:true})
setProps({IsLoadingProgress:false,initialValue:{…device}})
page.update()
page.find(Field).findWhere(x=>x.props().name==='name').props().value.should.be.equal(device.name)
})