TestPostRepository added.
This commit is contained in:
parent
0cf5814c7a
commit
4a88a35b9d
|
@ -0,0 +1,60 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Tests\Skobkin\PointToolsBundle\Repository;
|
||||||
|
|
||||||
|
use Doctrine\ORM\EntityManager;
|
||||||
|
use Skobkin\Bundle\PointToolsBundle\Entity\Blogs\Post;
|
||||||
|
use Skobkin\Bundle\PointToolsBundle\Repository\Blogs\PostRepository;
|
||||||
|
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
|
||||||
|
|
||||||
|
class TestPostRepository extends KernelTestCase
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @var EntityManager
|
||||||
|
*/
|
||||||
|
private $em;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var PostRepository
|
||||||
|
*/
|
||||||
|
private $postRepo;
|
||||||
|
|
||||||
|
protected function setUp()
|
||||||
|
{
|
||||||
|
self::bootKernel();
|
||||||
|
|
||||||
|
$this->em = static::$kernel->getContainer()->get('doctrine')->getManager();
|
||||||
|
$this->postRepo = $this->em->getRepository('SkobkinPointToolsBundle:Blogs\Post');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testFindOneById()
|
||||||
|
{
|
||||||
|
/** @var Post $post */
|
||||||
|
$post = $this->postRepo->findOneBy(['id' => 'shortpost']);
|
||||||
|
|
||||||
|
$this->assertNotNull($post, 'Post #shortpost not found');
|
||||||
|
$this->assertEquals('shortpost', $post->getId(), 'Post id is not #shortpost');
|
||||||
|
$this->assertEquals(99999, $post->getAuthor()->getId(), 'Post author id is not 99999');
|
||||||
|
$this->assertEquals('Test post with many comments', $post->getText(), 'Invalid post text');
|
||||||
|
$this->assertFalse($post->getPrivate(), 'Post is private');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testFindAll()
|
||||||
|
{
|
||||||
|
/** @var Post[] $posts */
|
||||||
|
$posts = $this->postRepo->findAll();
|
||||||
|
|
||||||
|
$this->assertCount(2, $posts, 'Not exactly 2 posts found');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testGetPostWithComments()
|
||||||
|
{
|
||||||
|
/** @var Post $longPost */
|
||||||
|
$longPost = $this->postRepo->getPostWithComments('longpost');
|
||||||
|
|
||||||
|
$this->assertNotNull($longPost, '#longpost not found');
|
||||||
|
$this->assertEquals(99999, $longPost->getAuthor()->getId(), 'Post author ID is not 99999');
|
||||||
|
$this->assertEquals('testuser', $longPost->getAuthor()->getLogin(), 'Post author login is not testuser');
|
||||||
|
$this->assertCount(10000, $longPost->getComments(), 'Not exactly 10000 comments found');
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue