Example #1
0
 /**
  * Testet ein komplettes löschen (PREHA Prinzip):
  * 
  * - prüft ob das entity mit der $id vorhanden ist
  * - löscht das entity
  * - cleart den $em
  * - asserted dass das json die alte id zurückgibt
  * - asserted dass das entity in der datenbank gelöscht wurde
  *
  * gibt das JSON zurück
  * @return string
  */
 public function deleteAcceptance($id, \Doctrine\ORM\EntityManager $em)
 {
     // Prepare
     $idField = $this->entityMeta->getIdentifier()->getName();
     $criteria = array($idField => $id);
     $repository = $em->getRepository($this->entityMeta->getClass());
     $res = $repository->findBy($criteria);
     $this->testCase->assertCount(1, $res, 'pre-condition: ' . $this->entityMeta->getEntityName() . ' ist vorhanden mit der ' . $idField . ' ' . $id . ' - failed.');
     // Run
     $json = $this->delete($id);
     // gibt die gelöschte oid zurück?
     $this->testCase->assertEquals($id, $json->id, $idField . ' war nicht korrekt in JSON-Response gesetzt');
     // E[rase] from memory
     $em->clear();
     // hydrate
     $res = $repository->findBy($criteria);
     // assert
     $this->testCase->assertEquals(array(), $res, 'Entity ' . $this->entityMeta->getEntityName() . ':' . $idField . '=>' . $id . ' darf nicht mehr vorhanden sein');
     return $json;
 }