Add test for getCycleDayNumber
This commit is contained in:
+1
-2
@@ -40,7 +40,7 @@ export default function config(opts) {
|
|||||||
const lastMensesLocalDate = LocalDate.parse(lastMensesStart.date)
|
const lastMensesLocalDate = LocalDate.parse(lastMensesStart.date)
|
||||||
const diffInDays = lastMensesLocalDate.until(targetDate, DAYS)
|
const diffInDays = lastMensesLocalDate.until(targetDate, DAYS)
|
||||||
// take maxCycleLength into account (we don't display cycle day numbers higher than 99 at the moment)
|
// take maxCycleLength into account (we don't display cycle day numbers higher than 99 at the moment)
|
||||||
if (diffInDays >= 99) return null
|
if (diffInDays >= maxCycleLength) return null
|
||||||
// cycle starts at day 1
|
// cycle starts at day 1
|
||||||
return diffInDays + 1
|
return diffInDays + 1
|
||||||
}
|
}
|
||||||
@@ -65,7 +65,6 @@ export default function config(opts) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function getCycleForCycleStartDay(startDay) {
|
function getCycleForCycleStartDay(startDay) {
|
||||||
// TODO this needs to be made cycle length aware. all other places can go?
|
|
||||||
const cycleStartIndex = cycleDaysSortedByDate.indexOf(startDay)
|
const cycleStartIndex = cycleDaysSortedByDate.indexOf(startDay)
|
||||||
const i = cycleStartsSortedByDate.indexOf(startDay)
|
const i = cycleStartsSortedByDate.indexOf(startDay)
|
||||||
const nextMensesStart = cycleStartsSortedByDate[i - 1]
|
const nextMensesStart = cycleStartsSortedByDate[i - 1]
|
||||||
|
|||||||
@@ -71,6 +71,27 @@ describe('getCycleDayNumber', () => {
|
|||||||
const result = getCycleDayNumber(targetDate)
|
const result = getCycleDayNumber(targetDate)
|
||||||
expect(result).to.be.null()
|
expect(result).to.be.null()
|
||||||
})
|
})
|
||||||
|
|
||||||
|
it('returns null if the cycle is longer than the max', function () {
|
||||||
|
const cycleStarts = [{
|
||||||
|
date: '2018-05-09',
|
||||||
|
isCycleStart: true,
|
||||||
|
bleeding: {
|
||||||
|
value: 2
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
date: '2018-05-03',
|
||||||
|
isCycleStart: true,
|
||||||
|
bleeding: { value: 2 }
|
||||||
|
}]
|
||||||
|
// we use the default 99 days max length
|
||||||
|
const getCycleDayNumber = cycleModule({
|
||||||
|
cycleStartsSortedByDate: cycleStarts
|
||||||
|
}).getCycleDayNumber
|
||||||
|
const targetDate = '2018-08-16'
|
||||||
|
const result = getCycleDayNumber(targetDate)
|
||||||
|
expect(result).to.be.null()
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
describe('getPreviousCycle', () => {
|
describe('getPreviousCycle', () => {
|
||||||
|
|||||||
Reference in New Issue
Block a user