Я пытаюсь улучшить тестовое покрытие для моих компонентов реакции, но у меня возникают проблемы с тестированием переменных и функций, объявленных в методе рендеринга моих компонентов. Ниже приведены несколько примеров, которые я не могу охватить:
1)
cityStateZip = `${cityStateZip} - ${location.zipExtension}`;
2)
directionsUrl = `maps://maps.apple.com/?saddr=My+Location&daddr=${gpsCoords.lat}+${gpsCoords.lng}`;
3)
const onClick = (pricingTileId) => {
if (store.selectedPharmacy !== pricingTileId) {
store.setPharmacy(pricingTileId);
}
};
Вот код:
class Tile extends Component {
const { location, store } = this.props;
render() {
let directionsUrl = `https://maps.google.com/?saddr=My+Location&daddr=${gpsCoords.lat}+${gpsCoords.lng}`;
if (navigator.platform.indexOf('iPhone') !== -1
|| navigator.platform.indexOf('iPod') !== -1
|| navigator.platform.indexOf('iPad') !== -1) {
directionsUrl = `maps://maps.apple.com/?saddr=My+Location&daddr=${gpsCoords.lat}+${gpsCoords.lng}`;
}
let cityStateZip = `${location.city}, ${location.state} ${location.zip}`;
if (location.zipExtension) {
cityStateZip = `${cityStateZip} - ${location.zipExtension}`;
}
const onClick = (pricingTileId) => {
if (store.selectedLocation !== pricingTileId) {
store.setLocation(pricingTileId);
}
};
let selectedClass;
if (store.selectedLocation === id) {
selectedClass = 'selected';
}
return (
)
Есть ли эффективный способ проверить переменные и функции, объявленные в функции рендеринга, которые я упускаю из виду? (Я использую Jest и Enzyme для тестирования). Благодарю вас!
getCityStateZip()
обрабатывает логику расширения zip, аgetDirectionsUrl()
обрабатывает логику конкретного устройства - person Hamms   schedule 20.06.2017