使用React Native Switch我想为value prop编写一个单元测试(使用jest和testing-library/react-native)。但其props中没有value我的用例是,当页面加载时,Switch将有一个默认值。但是我找不到一种方法来检查开关值。有没有一个正确的方法来检查它的value是真还是假?x1c 0d1x的数据附上的图片是Switch的 prop 列表
value
props
Switch
iyfjxgzm1#
你可以像这样检查prop的值,包括当你改变它时它是否工作:
expect(screen.getByRole('switch').props.value).toBe(true); fireEvent(screen.getByRole('switch'), 'onValueChange'); expect(screen.getByRole('switch').props.value).toBe(false);
字符串假设你的组件看起来像这样:
<Switch trackColor={{true: something, false:somethingElse}} thumbColor={someColor} ios_backgroundColor={somethingSomething} onValueChange={toggleValue} value={value} />
型值为const [value, toggleValue] = useState(false);。让我知道,如果这不适合你,也请添加组件和测试,你现在有。如果看不到这一点,很难说出了什么问题
const [value, toggleValue] = useState(false);
1条答案
按热度按时间iyfjxgzm1#
你可以像这样检查prop的值,包括当你改变它时它是否工作:
字符串
假设你的组件看起来像这样:
型
值为
const [value, toggleValue] = useState(false);
。让我知道,如果这不适合你,也请添加组件和测试,你现在有。如果看不到这一点,很难说出了什么问题