/** * @test */ public function makeCopyWorks() { $quiz = new Quiz(); $copy = $this->quizService->makeCopy($quiz); $this->assertNotSame($quiz, $copy); $this->assertSame($quiz, $copy->getCopyOf()); }
/** * @param \_OurBrand_\Quiz\Domain\Model\Quiz $quiz */ public function duplicateAction($quiz) { $newQuiz = $this->quizService->makeCopy($quiz); if ($newQuiz == null) { // TODO: User error handling. } $newQuiz->setCreator($this->currentUser->getIdentifier()); $newQuiz->setIsDraft(true); $this->quizRepository->add($newQuiz); $this->persistenceManager->persistAll(); $this->redirect('edit', null, null, array('quiz' => $newQuiz)); }