/** * @test */ public function removeTagFromObjectStorageHoldingTags() { $tag = new \Pluswerk\Simpleblog\Domain\Model\Tag(); $tagsObjectStorageMock = $this->getMock('TYPO3\\CMS\\Extbase\\Persistence\\ObjectStorage', array('detach'), array(), '', FALSE); $tagsObjectStorageMock->expects($this->once())->method('detach')->with($this->equalTo($tag)); $this->inject($this->subject, 'tags', $tagsObjectStorageMock); $this->subject->removeTag($tag); }
/** * @param \Pluswerk\Simpleblog\Domain\Model\Post $post * @param \Pluswerk\Simpleblog\Domain\Model\Comment $comment */ public function ajaxAction(\Pluswerk\Simpleblog\Domain\Model\Post $post, \Pluswerk\Simpleblog\Domain\Model\Comment $comment = NULL) { // Wenn der Kommentar leer ist, wird nicht persistiert if ($comment->getComment() == "") { return FALSE; } // Datum des Kommentars setzen und den Kommentar zum Post hinzufügen $comment->setCommentdate(new \DateTime()); $post->addComment($comment); // Signal for comment $this->signalSlotDispatcher->dispatch(__CLASS__, 'beforeCommentCreation', array($comment, $post)); $this->postRepository->update($post); $this->objectManager->get('TYPO3\\CMS\\Extbase\\Persistence\\Generic\\PersistenceManager')->persistAll(); $comments = $post->getComments(); foreach ($comments as $comment) { $json[$comment->getUid()] = array('comment' => $comment->getComment(), 'commentdate' => $comment->getCommentdate()); } return json_encode($json); }