diff --git a/.gitignore b/.gitignore index d5808eb3..6a6668a4 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ vendor !.gitkeep tests/App*/var/ +tests/App*/config/reference.php diff --git a/doc/database.md b/doc/database.md index 0a428627..e279e1ef 100644 --- a/doc/database.md +++ b/doc/database.md @@ -47,8 +47,8 @@ class MyControllerTest extends WebTestCase + // add all your fixtures classes that implement + // Doctrine\Common\DataFixtures\FixtureInterface + $this->databaseTool->loadFixtures([ -+ 'Bamarni\MainBundle\DataFixtures\ORM\LoadData', -+ 'Me\MyBundle\DataFixtures\ORM\LoadData' ++ \Bamarni\MainBundle\DataFixtures\ORM\LoadData:class, ++ \Me\MyBundle\DataFixtures\ORM\LoadData:class, + ]); // you can now run your functional tests with a populated database @@ -178,8 +178,8 @@ class MyControllerTest extends WebTestCase // add all your fixtures classes that implement // Doctrine\Common\DataFixtures\FixtureInterface $this->databaseTool->loadFixtures([ - 'Bamarni\MainBundle\DataFixtures\ORM\LoadData', - 'Me\MyBundle\DataFixtures\ORM\LoadData' + \Bamarni\MainBundle\DataFixtures\ORM\LoadData::class, + \Me\MyBundle\DataFixtures\ORM\LoadData::class', ]); // you can now run your functional tests with a populated database @@ -213,7 +213,7 @@ to the `setExcludedDoctrineTables` method before loading the fixtures. ```php $this->databaseTool->setExcludedDoctrineTables(['my_tablename_not_to_be_purged']); $this->databaseTool->loadFixtures([ - 'Me\MyBundle\DataFixtures\ORM\LoadData' + \Me\MyBundle\DataFixtures\ORM\LoadData::class, ]); ``` diff --git a/docker-compose.yml b/docker-compose.yml index 322c2d88..6ead5bc1 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,4 +1,3 @@ -version: '3.1' services: mariadb: image: 'mariadb:11' diff --git a/tests/App/DataFixtures/ORM/LoadDependentUserData.php b/tests/App/DataFixtures/ORM/LoadDependentUserData.php index cb20fabb..14fbfb0d 100644 --- a/tests/App/DataFixtures/ORM/LoadDependentUserData.php +++ b/tests/App/DataFixtures/ORM/LoadDependentUserData.php @@ -42,8 +42,8 @@ public function load(ObjectManager $manager): void public function getDependencies(): array { return [ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadSettingData', + LoadUserData::class, + LoadSettingData::class, ]; } } diff --git a/tests/App/DataFixtures/ORM/LoadDependentUserWithServiceData.php b/tests/App/DataFixtures/ORM/LoadDependentUserWithServiceData.php index caff769f..7e32f505 100644 --- a/tests/App/DataFixtures/ORM/LoadDependentUserWithServiceData.php +++ b/tests/App/DataFixtures/ORM/LoadDependentUserWithServiceData.php @@ -52,7 +52,7 @@ public function load(ObjectManager $manager): void public function getDependencies(): array { return [ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserWithServiceData', + LoadUserWithServiceData::class, ]; } } diff --git a/tests/Test/ConfigEventsTest.php b/tests/Test/ConfigEventsTest.php index c25b7d80..44ce0354 100644 --- a/tests/Test/ConfigEventsTest.php +++ b/tests/Test/ConfigEventsTest.php @@ -13,6 +13,7 @@ namespace Liip\Acme\Tests\Test; +use Doctrine\Common\DataFixtures\Executor\ORMExecutor; use Liip\Acme\Tests\AppConfigEvents\AppConfigEventsKernel; use Liip\Acme\Tests\AppConfigEvents\EventListener\FixturesSubscriber; use Liip\TestFixturesBundle\LiipTestFixturesEvents; @@ -57,7 +58,7 @@ public function testLoadEmptyFixturesAndCheckEvents(): void $fixtures = $databaseTool->loadFixtures([]); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); @@ -116,7 +117,7 @@ public function testLoadEmptyFixturesAndCheckEventsAreCalled(string $eventName, } $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); } diff --git a/tests/Test/ConfigMysqlCacheDbTest.php b/tests/Test/ConfigMysqlCacheDbTest.php index 4831b856..86cbd64d 100644 --- a/tests/Test/ConfigMysqlCacheDbTest.php +++ b/tests/Test/ConfigMysqlCacheDbTest.php @@ -13,6 +13,8 @@ namespace Liip\Acme\Tests\Test; +use Liip\Acme\Tests\App\DataFixtures\ORM\LoadSecondUserData; +use Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData; use Liip\Acme\Tests\App\Entity\User; use Liip\Acme\Tests\AppConfigMysqlCacheDb\AppConfigMysqlKernelCacheDb; use PHPUnit\Framework\Attributes\PreserveGlobalState; @@ -45,7 +47,7 @@ protected function setUp(): void public function testLoadFixturesAndCheckBackup(): void { $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ]); // Load data from database @@ -85,7 +87,7 @@ public function testLoadFixturesAndCheckBackup(): void // Load fixtures again $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ]); $users = $this->userRepository->findAll(); @@ -113,7 +115,7 @@ public function testLoadFixturesAndCheckBackup(): void public function testLoadFixturesCheckReferencesByClass(): void { $referenceRepository = $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ])->getReferenceRepository(); $references = $referenceRepository->getReferencesByClass(); @@ -125,8 +127,8 @@ public function testLoadFixturesCheckReferencesByClass(): void $this->assertCount(1, $references[$className]); $referenceRepository = $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadSecondUserData', + LoadUserData::class, + LoadSecondUserData::class, ])->getReferenceRepository(); $references = $referenceRepository->getReferencesByClass(); diff --git a/tests/Test/ConfigMysqlTest.php b/tests/Test/ConfigMysqlTest.php index 50865dd9..3efd18d0 100644 --- a/tests/Test/ConfigMysqlTest.php +++ b/tests/Test/ConfigMysqlTest.php @@ -13,8 +13,13 @@ namespace Liip\Acme\Tests\Test; +use Doctrine\Common\DataFixtures\Executor\ORMExecutor; +use Doctrine\Common\DataFixtures\ProxyReferenceRepository; use Doctrine\Common\DataFixtures\Purger\ORMPurger; use Doctrine\ORM\EntityRepository; +use Liip\Acme\Tests\App\DataFixtures\ORM\LoadDependentUserData; +use Liip\Acme\Tests\App\DataFixtures\ORM\LoadSecondUserData; +use Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData; use Liip\Acme\Tests\App\Entity\Setting; use Liip\Acme\Tests\App\Entity\User; use Liip\Acme\Tests\AppConfigMysql\AppConfigMysqlKernel; @@ -83,7 +88,7 @@ public function testLoadEmptyFixtures(): void $fixtures = $this->databaseTool->loadFixtures([]); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); } @@ -95,18 +100,18 @@ public function testLoadEmptyFixtures(): void public function testLoadFixtures(): void { $fixtures = $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ]); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); $repository = $fixtures->getReferenceRepository(); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\ProxyReferenceRepository', + ProxyReferenceRepository::class, $repository ); @@ -136,12 +141,12 @@ public function testLoadFixtures(): void public function testAppendFixtures(): void { $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ]); $referenceRepository = $this->databaseTool->loadFixtures( - ['Liip\Acme\Tests\App\DataFixtures\ORM\LoadSecondUserData'], - true + [LoadSecondUserData::class], + true, )->getReferenceRepository(); $references = $referenceRepository->getReferencesByClass(); @@ -208,16 +213,17 @@ public function testAppendFixtures(): void * Data fixtures and purge. * * Purge modes are defined in - * Doctrine\Common\DataFixtures\Purger\ORMPurger. + * + * @see ORMPurger */ public function testLoadFixturesAndExcludeFromPurge(): void { $fixtures = $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ]); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); @@ -244,7 +250,8 @@ public function testLoadFixturesAndExcludeFromPurge(): void * Data fixtures and purge. * * Purge modes are defined in - * Doctrine\Common\DataFixtures\Purger\ORMPurger. + * + * @see ORMPurger * * @group mysql * @group pgsql @@ -252,11 +259,11 @@ public function testLoadFixturesAndExcludeFromPurge(): void public function testLoadFixturesAndPurge(): void { $fixtures = $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ]); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); @@ -283,7 +290,7 @@ public function testLoadFixturesAndPurge(): void // Reload fixtures $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ]); $users = $this->userRepository->findAll(); @@ -358,11 +365,11 @@ public function testLoadFixturesFiles(): void public function testLoadDependentFixtures(): void { $fixtures = $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadDependentUserData', + LoadDependentUserData::class, ]); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); diff --git a/tests/Test/ConfigPgsqlCacheDbTest.php b/tests/Test/ConfigPgsqlCacheDbTest.php index 3cf34bfc..54e7db53 100644 --- a/tests/Test/ConfigPgsqlCacheDbTest.php +++ b/tests/Test/ConfigPgsqlCacheDbTest.php @@ -14,6 +14,8 @@ namespace Liip\Acme\Tests\Test; use Doctrine\Common\Annotations\Annotation\IgnoreAnnotation; +use Liip\Acme\Tests\App\DataFixtures\ORM\LoadSecondUserData; +use Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData; use Liip\Acme\Tests\App\Entity\User; use Liip\Acme\Tests\AppConfigPgsqlCacheDb\AppConfigPgsqlKernelCacheDb; @@ -53,7 +55,7 @@ public function testLoadFixturesAndCheckBackup(): void $this->assertTrue($this->databaseTool->isDatabaseCacheEnabled()); $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ]); // Load data from database @@ -93,7 +95,7 @@ public function testLoadFixturesAndCheckBackup(): void // Load fixtures again $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ]); $users = $this->userRepository->findAll(); @@ -124,7 +126,7 @@ public function testLoadFixturesAndCheckBackup(): void public function testLoadFixturesCheckReferences(): void { $referenceRepository = $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ])->getReferenceRepository(); $references = $referenceRepository->getReferencesByClass(); @@ -136,8 +138,8 @@ public function testLoadFixturesCheckReferences(): void $this->assertCount(1, $references[$className]); $referenceRepository = $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadSecondUserData', + LoadUserData::class, + LoadSecondUserData::class, ])->getReferenceRepository(); $references = $referenceRepository->getReferencesByClass(); diff --git a/tests/Test/ConfigSqliteTest.php b/tests/Test/ConfigSqliteTest.php index 9c0509a0..8374bf4e 100644 --- a/tests/Test/ConfigSqliteTest.php +++ b/tests/Test/ConfigSqliteTest.php @@ -13,9 +13,14 @@ namespace Liip\Acme\Tests\Test; +use Doctrine\Common\DataFixtures\Executor\ORMExecutor; use Doctrine\Common\DataFixtures\ProxyReferenceRepository; use Doctrine\Common\DataFixtures\Purger\ORMPurger; use Doctrine\ORM\EntityRepository; +use Liip\Acme\Tests\App\DataFixtures\ORM\LoadDependentUserData; +use Liip\Acme\Tests\App\DataFixtures\ORM\LoadDependentUserWithServiceData; +use Liip\Acme\Tests\App\DataFixtures\ORM\LoadSecondUserData; +use Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData; use Liip\Acme\Tests\App\Entity\User; use Liip\Acme\Tests\AppConfigSqlite\AppConfigSqliteKernel; use Liip\TestFixturesBundle\Services\DatabaseToolCollection; @@ -62,7 +67,7 @@ public function testLoadEmptyFixtures(): void $fixtures = $this->databaseTool->loadFixtures([]); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); } @@ -72,7 +77,7 @@ public function testLoadFixturesWithoutParameters(): void $fixtures = $this->databaseTool->loadFixtures(); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); } @@ -80,18 +85,18 @@ public function testLoadFixturesWithoutParameters(): void public function testLoadFixtures(): void { $fixtures = $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ]); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); $repository = $fixtures->getReferenceRepository(); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\ProxyReferenceRepository', + ProxyReferenceRepository::class, $repository ); @@ -130,7 +135,7 @@ public function loadAllFixtures(): void $fixtures = $this->databaseTool->loadAllFixtures(['wrongGroup']); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); @@ -138,7 +143,7 @@ public function loadAllFixtures(): void $repository = $fixtures->getReferenceRepository(); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\ProxyReferenceRepository', + ProxyReferenceRepository::class, $repository ); @@ -154,7 +159,7 @@ public function loadAllFixtures(): void $fixtures = $this->databaseTool->loadAllFixtures(['myGroup']); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); @@ -162,7 +167,7 @@ public function loadAllFixtures(): void $repository = $fixtures->getReferenceRepository(); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\ProxyReferenceRepository', + ProxyReferenceRepository::class, $repository ); @@ -178,7 +183,7 @@ public function loadAllFixtures(): void $fixtures = $this->databaseTool->loadAllFixtures(); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); @@ -186,7 +191,7 @@ public function loadAllFixtures(): void $repository = $fixtures->getReferenceRepository(); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\ProxyReferenceRepository', + ProxyReferenceRepository::class, $repository ); @@ -202,12 +207,12 @@ public function loadAllFixtures(): void public function testAppendFixtures(): void { $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadUserData', + LoadUserData::class, ]); $this->databaseTool->loadFixtures( - ['Liip\Acme\Tests\App\DataFixtures\ORM\LoadSecondUserData'], - true + [LoadSecondUserData::class], + true, ); // Load data from database @@ -263,11 +268,11 @@ public function testAppendFixtures(): void public function testLoadDependentFixtures(): void { $fixtures = $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadDependentUserData', + LoadDependentUserData::class, ]); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); @@ -286,11 +291,11 @@ public function testLoadDependentFixtures(): void public function testLoadDependentFixturesWithDependencyInjected(): void { $fixtures = $this->databaseTool->loadFixtures([ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadDependentUserWithServiceData', + LoadDependentUserWithServiceData::class, ]); $this->assertInstanceOf( - 'Doctrine\Common\DataFixtures\Executor\ORMExecutor', + ORMExecutor::class, $fixtures ); diff --git a/tests/Test/ConfigTest.php b/tests/Test/ConfigTest.php index 6a22b5c7..613fc611 100644 --- a/tests/Test/ConfigTest.php +++ b/tests/Test/ConfigTest.php @@ -14,6 +14,7 @@ namespace Liip\Acme\Tests\Test; use Doctrine\ORM\EntityRepository; +use Liip\Acme\Tests\App\DataFixtures\ORM\LoadDependentUserData; use Liip\Acme\Tests\App\Entity\User; use Liip\Acme\Tests\AppConfig\AppConfigKernel; use Liip\TestFixturesBundle\Services\DatabaseBackup\SqliteDatabaseBackup; @@ -111,7 +112,7 @@ public function testLoadFixturesFilesWithCustomProvider(): void public function testCacheCanBeDisabled(): void { $fixtures = [ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadDependentUserData', + LoadDependentUserData::class, ]; $this->databaseTool->setDatabaseCacheEnabled(false); @@ -154,7 +155,7 @@ public function testCacheCanBeDisabled(): void public function testBackupIsRefreshed(): void { $fixtures = [ - 'Liip\Acme\Tests\App\DataFixtures\ORM\LoadDependentUserData', + LoadDependentUserData::class, ]; $this->databaseTool->loadFixtures($fixtures);