Пример #1
0
 public function testSynchronizeCollection_fromInverse()
 {
     $this->tag = new ArticleTag('Wahl');
     $this->processor = new Processor($this->tag, $this->emm);
     $a1 = $this->article;
     $a1->addTag($this->tag);
     $a1->setId(4);
     $a2 = new TestEntities\Article('a2: Wahlen in Russland: angebliches Attentat auf Wladimir Putin', 'Auf Russlands Premierminister Wladimir Putin sollte angeblich ein Anschlag verübt werden. Kurz vor der Präsidentschaftswahl weckt die Geschichte allerdings Zweifel. Putin selbst teilt derweil Parolen aus.');
     $a2->addTag($this->tag);
     $a2->setId(5);
     $n1 = new TestEntities\Article('n1: Wahlen in Russland (Fortsetzung): ', 'Die russischen Islamisten im Nordkaukasus nahestehende Webseite kavkazcenter.com nannte den Bericht „unsinnige Vorwahl-Propaganda“. Kommunistenchef Gennadi Sjuganow sprach von einem „billigen Trick, der schlecht riecht“, wie die Agentur Ria Nowosti meldete. Der Ultranationalist Wladimir Schirinowski von der Liberaldemokratischen Partei sagte, der Bericht solle bei „ungebildeten alten Frauen“ Mitleid mit Putin provozieren. Putins Sprecher Dmitri Peskow wies die Vorwürfe als „heuchlerisch“ zurück');
     $n2 = new TestEntities\Article('n2: Wahlen in Russland (Fortsetung Seite2):', 'Wenige Tage vor der Präsidentenwahl in Russland ist ein Bericht des Staatsfernsehens über ein vereiteltes Attentat auf Kandidat und Regierungschef Wladimir Putin auf Skepsis gestoßen. Wie der vom Kreml kontrollierte Erste Kanal am Montag meldete, wollten drei Russen Putin im Auftrag des tschetschenischen Terrorchefs Doku Umarow nach der Abstimmung am 4. März in Moskau töten.');
     $formArticles = array($a1, $n1, $n2);
     $this->processor->synchronizeCollection('articles', $formArticles);
     // print $this->processor->log;
     $this->assertEntityCollectionEquals(new ArrayCollection(array($a1, $n1, $n2)), $this->tag->getArticles(), 'articles-processed');
     // a2 muss ja persisted werden, weil das tag enfernt wird
     // a1 hingegen nicht, da dort keine Änderung erfolgt
     $this->assertEntityCollectionEquals(new ArrayCollection(array($a2, $n1, $n2)), $this->emm->getPersisted(), 'articles-persisted');
 }
Пример #2
0
 public function testAcceptance()
 {
     $this->assertInstanceOf('Psc\\Code\\Generate\\GClass', $gClass = $this->entityMeta->getGClass());
     $this->assertEquals(\Psc\Doctrine\TestEntities\Article::getSetMeta(), $this->entityMeta->getSetMeta());
     $this->assertEquals('article', $this->entityMeta->getEntityName());
     $this->assertEquals('Artikel', $this->entityMeta->getLabel(\Psc\CMS\TabsContentItem2::LABEL_DEFAULT));
     $this->assertEquals('Psc\\Doctrine\\TestEntities\\Article', $this->entityMeta->getClass());
     // das benutzen
     $this->assertEquals('Psc\\Doctrine\\TestEntities\\Article', $this->entityMeta->getGClass()->getFQN());
     // das nicht
     // defaults
     $this->assertEquals(300, $this->entityMeta->getAutoCompleteDelay());
     $this->assertEquals(2, $this->entityMeta->getAutoCompleteMinLength());
 }