public function testIGetRedIfIDrinkOverUpperRiskLimitsAndIAmMale() { $person = new Person(); $person->setGender(Person::GENDER_MALE); $questionnaire = new Questionnaire($person); $drinking = $questionnaire->getDrinking(); $drinking->setDoYouDrink(Drinking::DOES_DRINK)->setWhichDaysDoYouDrink('mon, tues, wed, thurs, fri, sat')->setWeekendDrinks((new Drinks())->setBeerCiderPintAmount(4))->setWeekdayDrinks((new Drinks())->setBeerCiderPintAmount(4))->setCompletedDate(new \DateTime()); $questionnaire->setDrinking($drinking); $rag = $this->instance->calculateScore($questionnaire); $this->assertEquals(DrinkingScore::RAG_RED, $rag['rag']); $this->assertEquals(DrinkingScore::SCORE_RED, $rag['value']); }
/** * @JMS\VirtualProperty * @JMS\SerializedName("rag_score") * @JMS\Groups({"results"}) * @return array */ public function getRagScore() { $scoring = new DrinkingScore(); return $scoring->calculateScore($this->questionnaire); }