/**
  * @inheritDoc
  */
 public function buildNarrative(Questionnaire $questionnaire)
 {
     if (EatingRagIsRed::isSatisfiedBy($questionnaire)) {
         $this->buildRedEatingNarrative($questionnaire);
     } elseif (EatingRagIsAmber::isSatisfiedBy($questionnaire)) {
         $this->buildAmberEatingNarrative($questionnaire);
     } else {
         $this->buildGreenEatingNarrative($questionnaire);
     }
     return $this->narrative;
 }
 /**
  * @param Questionnaire $questionnaire
  */
 protected function buildEatingBehaviours(Questionnaire $questionnaire)
 {
     if (EatingRagIsRed::isSatisfiedBy($questionnaire)) {
         $this->buildBadEatingBehaviour($questionnaire, RagScore::RAG_RED);
     } elseif (EatingRagIsAmber::isSatisfiedBy($questionnaire)) {
         $this->buildBadEatingBehaviour($questionnaire);
     } else {
         $this->narrative->addMessages(self::SECTION_NAME, array(EatingNarrativeBuilder::SECTION_NAME => 'behaviours_eating_green'));
     }
 }