У меня есть компонент строки состояния Интернета в реагирующем, метод рендеринга которого выглядит примерно так:
render() {
if (this.state.isConnected) {
return false
}
return(...)
}
}
Обычно, если ваш телефон не может установить соединение, он отображает сообщение в верхней части экрана.говорит вам, чтобы подключиться к Интернету.
Однако значение по умолчанию для this.state.isConnected
является истинным, и, следовательно, когда вы тестируете снимок в шутку, вы просто получаете нулевой вывод в снимке, т.е.
exports[`ConnectionBar Component renders 1`] = `null`
Я не могу придумать, как смоделировать this.state.isConnected
в false в тесте, и, следовательно, в моментальном снимке теста ничего не отображается.
PS: я не хочу устанавливать значение по умолчанию this.state.isConnected
в значение false, так как я заставляю немного задержаться перед изменением состояния, чтобы предотвратить мерцание, и это приведет к появлению панели «Проверьте ваше соединение»появится на каждом экране примерно на секунду, прежде чем исчезнет.
Если у кого-то есть понимание, пожалуйста, дайте мне знать.