Fixes the date not being set on changing cycle day, and adds a test for this case

This commit is contained in:
Sofiya Tepikin
2019-08-19 22:23:41 +02:00
parent c226923759
commit 29a076e5a2
4 changed files with 50 additions and 9 deletions
+9 -3
View File
@@ -2,7 +2,7 @@ import React, { Component } from 'react'
import { ScrollView, View } from 'react-native'
import { connect } from 'react-redux'
import { getDate } from '../../slices/date'
import { getDate, setDate } from '../../slices/date'
import { LocalDate } from 'js-joda'
import Header from '../header'
@@ -26,8 +26,8 @@ class CycleDayOverView extends Component {
const targetDate = target === 'before' ?
localDate.minusDays(1).toString() :
localDate.plusDays(1).toString()
this.props.setDate(targetDate)
this.setState({
date: targetDate,
cycleDay: getCycleDay(targetDate)
})
}
@@ -100,7 +100,13 @@ const mapStateToProps = (state) => {
})
}
const mapDispatchToProps = (dispatch) => {
return({
setDate: (date) => dispatch(setDate(date)),
})
}
export default connect(
mapStateToProps,
null,
mapDispatchToProps,
)(CycleDayOverView)
+1 -1
View File
@@ -12,7 +12,7 @@ export default function CycleDayHeader({ date, cycleDayNumber, ...props }) {
style={styles.accentCircle}
left={props.middle - styles.accentCircle.width / 2}
/>
<NavigationArrow direction='left' {...props}/>
<NavigationArrow testID='previousDateButton' direction='left' {...props}/>
<View>
<Text style={styles.dateHeader} testID='cycleDayTitleDate'>
{formatDate(date)}