如果变量具有反应组件作为值,我如何使用 mocha/chai/sinon 进行单元测试?
How do i unit test using mocha/chai/sinon if a variable has a react component as value?
我有一个变量,它根据条件为真或假动态分配给 React 组件。
if(isValid) {icon = <ErrorIcon className: "error"/>}
else {icon = <SuccessIcon className: "success"/>
如何在单元测试中测试图标的预期值是一个组件还是其他组件?
if (icon.type === SuccessIcon) {
} else if (icon.type === ErrorIcon) {
}
应该可以解决问题。
不确定这个 API 有多可靠,但每个 React 组件实例都有一个 type
属性,因此您可以根据组件定义检查它:
const isErrorIcon = icon.type === ErrorIcon
所以在你的情况下:
expect(icon.type).to.equal(ErrorIcon)
我有一个变量,它根据条件为真或假动态分配给 React 组件。
if(isValid) {icon = <ErrorIcon className: "error"/>}
else {icon = <SuccessIcon className: "success"/>
如何在单元测试中测试图标的预期值是一个组件还是其他组件?
if (icon.type === SuccessIcon) {
} else if (icon.type === ErrorIcon) {
}
应该可以解决问题。
不确定这个 API 有多可靠,但每个 React 组件实例都有一个 type
属性,因此您可以根据组件定义检查它:
const isErrorIcon = icon.type === ErrorIcon
所以在你的情况下:
expect(icon.type).to.equal(ErrorIcon)