public function testCreateQuestionnaire()
 {
     $this->createQuestionnaire();
     $this->assertNotNull($this->result);
     $this->assertStringStartsWith('FIRST_NAME ', $this->result->getPerson()->getFirstName());
     $this->assertNotEmpty($this->result->getId());
 }
 /**
  * @return Questionnaire
  */
 public function getQuestionnaire()
 {
     if (!self::$questionnaire instanceof Questionnaire) {
         $person = new Person();
         $person->setFirstName('Test Person')->setAge(55)->setGender('male');
         $questionnaire = new Questionnaire($person);
         $this->getEntityManager()->persist($questionnaire);
         $this->getEntityManager()->flush($questionnaire);
         self::$questionnaire = $questionnaire;
     } else {
         self::$questionnaire = $this->getEntityManager()->getRepository(get_class(self::$questionnaire))->findOneBy(array('id' => self::$questionnaire->getId()));
     }
     return self::$questionnaire;
 }
 /**
  * @param Questionnaire $questionnaire
  * @return View
  */
 public function updateQuestionnaire(Questionnaire $questionnaire)
 {
     if (false === $this->requirementIsNull($questionnaire->getId(), 'id')) {
         try {
             $questionnaire = $this->getRepository()->updateQuestionnaire($questionnaire);
             $this->setViewData($questionnaire);
         } catch (\Exception $e) {
             $this->exceptionOccurred($e);
         }
     }
     if (true === $this->isEntityEmpty()) {
         $this->entityNotFound($questionnaire->getId(), 'Questionnaire');
     }
     return $this->getView();
 }
 /**
  * @param Questionnaire $questionnaire
  * @return array
  */
 protected function extractIdentifiableInformation(Questionnaire $questionnaire)
 {
     return array("entryReference" => $questionnaire->getId(), "dateCreated" => $questionnaire->getDateCreated()->format(\DateTime::ISO8601), "dateCompleted" => $questionnaire->getCompletedDate()->format(\DateTime::ISO8601));
 }