React Hook已经发布了一段时间,但是我仍然找不到用于测试useSelector()
和useDispatch()
挂钩的标准测试方法,例如,我有一个简单的组件
const TestComponent = () => {
const currentUserId = useSelector(state => {
return state.userId;
});
const currentUserName = useSelector(state => {
return state.userName;
});
const dispatch = useDispatch();
const updateUsername = (id, name) => { dispatch(updateUsername(id, name)) };
return (
<span>
<UserForm userId={currentUserId} userName={currentUserName} onChange={() => {updateUsername}} />
</span>
)
}
我如何编写要验证的useSelector()
和useDispatch()
的测试用例:
1)当我以某种模拟状态初始化react hook组件时,我在组件内部的currentUserId
与模拟的``state.userId`?
2)当我在onChange
组件上模拟UserForm
事件时,我的dispatch(updateUsername(id, name))
应该被调用一次吗?连同我的state.name
一起使用模型更新用户名进行更新吗?