diff --git a/lib/sympto/index.js b/lib/sympto/index.js index 979efc6c4be77bfa3f608c9c15a6e207a75c19d0..d51fda7fda26405081ccad03c8cec0906cd0329e 100644 --- a/lib/sympto/index.js +++ b/lib/sympto/index.js @@ -103,23 +103,23 @@ export default function getSymptoThermalStatus(cycleInfo) { function throwIfArgsAreNotInRequiredFormat(cycles) { cycles.forEach(cycle => { - assert.ok(Array.isArray(cycle)) - assert.ok(cycle.length > 0) //what about 2 cycles of 1 day each?! - assert.ok(cycle[0].bleeding !== null) - assert.equal(typeof cycle[0].bleeding, 'object', "First cycle day must contain bleeding value") - assert.equal(typeof cycle[0].bleeding.value, 'number', "Bleeding value must be a number") + assert.ok(Array.isArray(cycle), "Cycles must be arrays.") + assert.ok(cycle.length > 0, "Cycle must not be empty.") //what about 2 cycles of 1 day each?! + assert.ok(cycle[0].bleeding !== null, "First cycle day should have bleeding.") + assert.equal(typeof cycle[0].bleeding, 'object', "First cycle day must contain bleeding value.") + assert.equal(typeof cycle[0].bleeding.value, 'number', "First cycle day bleeding value is a number.") cycle.forEach(day => { - assert.equal(typeof day.date, 'string') - assert.doesNotThrow(() => LocalDate.parse(day.date)) - if (day.temperature) assert.equal(typeof day.temperature.value, 'number', "temperature value must be number") - if (day.mucus) assert.equal(typeof day.mucus.value, 'number', "mucus value must be number") - if (day.mucus) assert.ok(day.mucus.value >= 0, "mucus value must be 0 or bigger") - if (day.mucus) assert.ok(day.mucus.value <= 4, "mucus value must be 4 or smaller") - if (day.cervix) assert.equal(typeof day.cervix.value, 'object') + assert.equal(typeof day.date, 'string', "Date is given as a string.") + assert.doesNotThrow(() => LocalDate.parse(day.date), "Date is given in right string format.") + if (day.temperature) assert.equal(typeof day.temperature.value, 'number', "Temperature value is a number.") + if (day.mucus) assert.equal(typeof day.mucus.value, 'number', "Mucus value is a number.") + if (day.mucus) assert.ok(day.mucus.value >= 0, "Mucus value is greater or equal to 0.") + if (day.mucus) assert.ok(day.mucus.value <= 4, "Mucus value below 5.") if (day.cervix) assert.ok(day.cervix.value.opening >= 0, "cervix opening value must be 0 or bigger") if (day.cervix) assert.ok(day.cervix.value.opening <= 2, "cervix opening value must be 2 or smaller") if (day.cervix) assert.ok(day.cervix.value.firmness >= 0, "cervix firmness value must be 0 or bigger") if (day.cervix) assert.ok(day.cervix.value.firmness <= 1, "cervix firmness value must be 1 or smaller") + assert.equal(typeof cycle[0].bleeding.value, 'number', "Bleeding value must be a number") }) }) }