mirror of
https://github.com/kevinveenbirkenbach/infinito.git
synced 2025-09-13 05:47:11 +02:00
Implemented FixtureManagement
This commit is contained in:
@@ -5,8 +5,9 @@ namespace Tests\Integration\DataFixtures;
|
||||
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
|
||||
use Doctrine\ORM\EntityManager;
|
||||
use App\Entity\Source\AbstractSource;
|
||||
use App\DBAL\Types\SystemSlugType;
|
||||
use App\Entity\Source\Complex\UserSourceInterface;
|
||||
use App\Domain\FixtureManagement\FixtureSource\ImpressumFixtureSource;
|
||||
use App\Domain\FixtureManagement\FixtureSource\GuestUserFixtureSource;
|
||||
|
||||
class SourceFixturesIntegrationTest extends KernelTestCase
|
||||
{
|
||||
@@ -24,14 +25,14 @@ class SourceFixturesIntegrationTest extends KernelTestCase
|
||||
public function testImpressumSource(): void
|
||||
{
|
||||
$sourceRepository = $this->entityManager->getRepository(AbstractSource::class);
|
||||
$imprint = $sourceRepository->findOneBySlug(SystemSlugType::IMPRINT);
|
||||
$imprint = $sourceRepository->findOneBySlug(ImpressumFixtureSource::SLUG);
|
||||
$this->assertInternalType('string', $imprint->getText());
|
||||
}
|
||||
|
||||
public function testGuestUserSource(): void
|
||||
{
|
||||
$sourceRepository = $this->entityManager->getRepository(AbstractSource::class);
|
||||
$userSource = $sourceRepository->findOneBySlug(SystemSlugType::GUEST_USER);
|
||||
$userSource = $sourceRepository->findOneBySlug(GuestUserFixtureSource::SLUG);
|
||||
$this->assertInstanceOf(UserSourceInterface::class, $userSource);
|
||||
}
|
||||
}
|
||||
|
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
|
||||
namespace tests\Integration\Domain\FixtureManagement;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
use App\Domain\FixtureManagement\FixtureSourceFactory;
|
||||
use App\Domain\FixtureManagement\FixtureSource\FixtureSourceInterface;
|
||||
use App\Entity\Source\SourceInterface;
|
||||
|
||||
/**
|
||||
* @author kevinfrantz
|
||||
*/
|
||||
class FixtureSourceFactoryTest extends TestCase
|
||||
{
|
||||
/**
|
||||
* @var array|FixtureSourceInterface[]
|
||||
*/
|
||||
protected $fixtureSources;
|
||||
|
||||
public function setUp(): void
|
||||
{
|
||||
$this->fixtureSources = FixtureSourceFactory::getAllFixtureSources();
|
||||
}
|
||||
|
||||
public function testFixtureSourcesSlugs(): void
|
||||
{
|
||||
$slugs = [];
|
||||
foreach ($this->fixtureSources as $fixtureSource) {
|
||||
$this->assertInstanceOf(FixtureSourceInterface::class, $fixtureSource);
|
||||
$slug = $fixtureSource->getSlug();
|
||||
$this->assertIsString($slug);
|
||||
$this->assertFalse(in_array($slug, $slugs), 'A slug has to be unique');
|
||||
$slugs[] = $slug;
|
||||
}
|
||||
}
|
||||
|
||||
public function testFixtureSourcesObjects(): void
|
||||
{
|
||||
$objects = [];
|
||||
foreach ($this->fixtureSources as $fixtureSource) {
|
||||
$this->assertInstanceOf(SourceInterface::class, $fixtureSource->getORMReadyObject());
|
||||
$this->assertFalse(in_array($fixtureSource, $objects), 'A slug has to be unique');
|
||||
$objects[] = $fixtureSource;
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user