public function __construct(Questionnaire $questionnaire, TranslatorInterface $translator) { $input = array(); $input = array_merge($input, $this->extractIdentifiableInformation($questionnaire)); $input = array_merge($input, RespondentHelper::extractRespondent($questionnaire->getPerson())); $input = array_merge($input, RespondentHelper::extractAddress($questionnaire->getPerson()->getAddress())); $input = array_merge($input, HowAreYouHelper::extractHowAreYouFeeling($questionnaire->getAboutYou()->getFeelings())); $input = array_merge($input, HowAreYouHelper::extractHindrances($questionnaire->getAboutYou()->getHindrances())); $input = array_merge($input, HowAreYouHelper::extractDependants($questionnaire->getAboutYou()->getDependants())); $input = array_merge($input, HowAreYouHelper::extractMotivations($questionnaire->getAboutYou()->getMotivations())); $input = array_merge($input, SmokingHelper::extractSmoking($questionnaire->getSmoking())); $input = array_merge($input, DrinkingHelper::extractDrinking($questionnaire->getDrinking())); $input = array_merge($input, MovingHelper::extractMoving($questionnaire->getMoving())); $input = array_merge($input, EatingHelper::extractEating($questionnaire->getEating())); $input = array_merge($input, ResultsNarrativeHelper::extractResultsNarrative($questionnaire, $translator)); $input = array_merge($input, $this->extractRagScore($questionnaire)); parent::__construct($input); }
public function testIGetANonEmptyResultsNarrativeOnACompleteQuiz() { $person = (new Person())->setFirstName('test')->setGender('female'); $completedDate = new \DateTime(); $questionnaire = new Questionnaire($person); $aboutYou = $questionnaire->getAboutYou(); $aboutYou->getFeelings()->setCompletedDate($completedDate); $aboutYou->getHindrances()->setCompletedDate($completedDate); $aboutYou->getMotivations()->setCompletedDate($completedDate); $aboutYou->getDependants()->setCompletedDate($completedDate); $questionnaire->setAboutYou($aboutYou->setCompletedDate($completedDate)); $questionnaire->getDrinking()->setCompletedDate($completedDate); $questionnaire->getEating()->setCompletedDate($completedDate); $questionnaire->getMoving()->setCompletedDate($completedDate); $questionnaire->getSmoking()->setCompletedDate($completedDate); $results = ResultsNarrativeHelper::extractResultsNarrative($questionnaire, $this->translator); foreach ($results as $result) { $this->assertEquals(base64_encode(self::TRANS_STRING), $result); } }