Implemented Members attribut and optimized membership

This commit is contained in:
Kevin Frantz
2018-11-24 18:13:04 +01:00
parent a64541a9ad
commit cb1316a380
11 changed files with 116 additions and 28 deletions

View File

@@ -0,0 +1,37 @@
<?php
namespace Tests\Unit\Entity\Attribut;
use PHPUnit\Framework\TestCase;
use Doctrine\Common\Collections\ArrayCollection;
use App\Entity\Attribut\MembersAttributInterface;
use App\Entity\Source\SourceInterface;
use App\Entity\Attribut\MembersAttribut;
class MembersAttributTest extends TestCase
{
/**
* @var MembersAttributInterface
*/
protected $members;
public function setUp(): void
{
$this->members = new class() implements MembersAttributInterface {
use MembersAttribut;
};
}
public function testConstructor(): void
{
$this->expectException(\TypeError::class);
$this->members->getMembers();
}
public function testAccessors(): void
{
$membership = $this->createMock(SourceInterface::class);
$this->assertNull($this->members->setMembers(new ArrayCollection([$membership])));
$this->assertEquals($this->members->getMembers()->get(0), $membership);
}
}

View File

@@ -32,6 +32,7 @@ class AbstractSourceTest extends TestCase
$this->assertInstanceOf(RelationInterface::class, $this->source->getRelation());
$this->assertInstanceOf(Collection::class, $this->source->getMemberships());
$this->assertInstanceOf(LawInterface::class, $this->source->getLaw());
$this->assertInstanceOf(Collection::class, $this->source->getMembers());
}
public function testSlugInit(): void

View File

@@ -1,4 +1,5 @@
<?php
namespace tests\Unit\Repository;
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
@@ -10,33 +11,27 @@ use App\Entity\Source\Complex\UserSource;
class UserSourceRepositoryTest extends KernelTestCase
{
/**
*
* @var EntityManager
*/
protected $entityManager;
/**
*
* @var UserSourceRepository
*/
protected $userSourceRepository;
/**
*
* @var UserSourceInterface
*/
protected $loadedUserSource;
/**
*
* @var UserInterface
*/
protected $user;
/**
*
* @var UserSourceInterface
*/
protected $userSource;
@@ -89,7 +84,6 @@ class UserSourceRepositoryTest extends KernelTestCase
}
/**
*
* {@inheritdoc}
*
* @see \Symfony\Bundle\FrameworkBundle\Test\KernelTestCase::tearDown()