public function testDeepCopyConcretInheritance() { $comment1 = new ConcreteComment(); $comment1->setMessage('my-new-comment1'); $concreteArticle = new ConcreteArticle(); $concreteArticle->setBody('TestBody'); $concreteArticle->addConcreteComment($comment1); $concreteArticle->save(); $comment1->save(); $this->assertNotNull($comment1->getId()); $this->assertNotNull($concreteArticle->getId()); $this->assertEquals(1, $concreteArticle->countConcreteComments()); $this->assertEquals($comment1->getConcreteContentId(), $concreteArticle->getId()); $copy = $concreteArticle->copy(true); $this->assertNull($copy->getId()); $this->assertEquals(1, $concreteArticle->countConcreteComments()); $comments = $copy->getConcreteContent()->getConcreteComments(); $this->assertEquals('my-new-comment1', $comments[0]->getMessage()); }
public function testPostDeleteCopyData() { ConcreteArticleQuery::create()->deleteAll(); ConcreteQuizzQuery::create()->deleteAll(); ConcreteContentQuery::create()->deleteAll(); ConcreteCategoryQuery::create()->deleteAll(); $category = new ConcreteCategory(); $category->setName('main'); $article = new ConcreteArticle(); $article->setConcreteCategory($category); $article->save(); $id = $article->getId(); $article->delete(); $this->assertNull(ConcreteContentQuery::create()->findPk($id), 'delete() removes the parent record as well'); }