mirror of
https://github.com/doctrine/data-fixtures.git
synced 2026-03-23 22:32:13 +01:00
Convert @final to hard final
This commit is contained in:
@@ -33,6 +33,14 @@ For the following method, the `class` param is now mandatory:
|
||||
The following method was removed:
|
||||
- `ReferenceRepository::getReferences`
|
||||
|
||||
The following classes are now final, each of them has an interface you can implement:
|
||||
- `Doctrine\Common\DataFixtures\Executor\MongoDBExecutor`
|
||||
- `Doctrine\Common\DataFixtures\Executor\ORMExecutor`
|
||||
- `Doctrine\Common\DataFixtures\Executor\PHPCSExecutor`
|
||||
- `Doctrine\Common\DataFixtures\Purger\MongoDBPurger`
|
||||
- `Doctrine\Common\DataFixtures\Purger\ORMPurger`
|
||||
- `Doctrine\Common\DataFixtures\Purger\PHPCSPurger`
|
||||
|
||||
# Upgrade to 1.8
|
||||
|
||||
## Deprecated closure loggers in favor of PSR-3
|
||||
|
||||
@@ -37,7 +37,9 @@
|
||||
<rule ref="SlevomatCodingStandard.Classes.SuperfluousInterfaceNaming">
|
||||
<exclude-pattern>src/DependentFixtureInterface.php</exclude-pattern>
|
||||
<exclude-pattern>src/FixtureInterface.php</exclude-pattern>
|
||||
<exclude-pattern>src/Purger/MongoDBPurgerInterface.php</exclude-pattern>
|
||||
<exclude-pattern>src/Purger/ORMPurgerInterface.php</exclude-pattern>
|
||||
<exclude-pattern>src/Purger/PHPCRPurgerInterface.php</exclude-pattern>
|
||||
<exclude-pattern>src/Purger/PurgerInterface.php</exclude-pattern>
|
||||
<exclude-pattern>src/OrderedFixtureInterface.php</exclude-pattern>
|
||||
<exclude-pattern>src/SharedFixtureInterface.php</exclude-pattern>
|
||||
|
||||
@@ -65,6 +65,11 @@ parameters:
|
||||
count: 1
|
||||
path: src/Purger/PHPCRPurger.php
|
||||
|
||||
-
|
||||
message: "#^Parameter \\$dm of method Doctrine\\\\Common\\\\DataFixtures\\\\Purger\\\\PHPCRPurgerInterface\\:\\:setDocumentManager\\(\\) has invalid type Doctrine\\\\Common\\\\DataFixtures\\\\Purger\\\\DocumentManager\\.$#"
|
||||
count: 1
|
||||
path: src/Purger/PHPCRPurgerInterface.php
|
||||
|
||||
-
|
||||
message: "#^Access to an undefined property Doctrine\\\\Persistence\\\\Mapping\\\\ClassMetadata\\<T of object\\>\\:\\:\\$name\\.$#"
|
||||
count: 1
|
||||
@@ -97,7 +102,7 @@ parameters:
|
||||
|
||||
-
|
||||
message: "#^Method Doctrine\\\\Tests\\\\Common\\\\DataFixtures\\\\Executor\\\\PHPCRExecutorTest\\:\\:getDocumentManager\\(\\) has invalid return type Doctrine\\\\ODM\\\\PHPCR\\\\DocumentManager\\.$#"
|
||||
count: 2
|
||||
count: 1
|
||||
path: tests/Common/DataFixtures/Executor/PHPCRExecutorTest.php
|
||||
|
||||
-
|
||||
|
||||
@@ -5,16 +5,14 @@ declare(strict_types=1);
|
||||
namespace Doctrine\Common\DataFixtures\Executor;
|
||||
|
||||
use Doctrine\Common\DataFixtures\Event\Listener\MongoDBReferenceListener;
|
||||
use Doctrine\Common\DataFixtures\Purger\MongoDBPurger;
|
||||
use Doctrine\Common\DataFixtures\Purger\MongoDBPurgerInterface;
|
||||
use Doctrine\Common\DataFixtures\ReferenceRepository;
|
||||
use Doctrine\ODM\MongoDB\DocumentManager;
|
||||
|
||||
/**
|
||||
* Class responsible for executing data fixtures.
|
||||
*
|
||||
* @final since 1.8.0
|
||||
*/
|
||||
class MongoDBExecutor extends AbstractExecutor
|
||||
final class MongoDBExecutor extends AbstractExecutor
|
||||
{
|
||||
private MongoDBReferenceListener $listener;
|
||||
|
||||
@@ -23,7 +21,7 @@ class MongoDBExecutor extends AbstractExecutor
|
||||
*
|
||||
* @param DocumentManager $dm DocumentManager instance used for persistence.
|
||||
*/
|
||||
public function __construct(private DocumentManager $dm, MongoDBPurger|null $purger = null)
|
||||
public function __construct(private DocumentManager $dm, MongoDBPurgerInterface|null $purger = null)
|
||||
{
|
||||
if ($purger !== null) {
|
||||
$this->purger = $purger;
|
||||
|
||||
@@ -8,10 +8,8 @@ use Doctrine\ORM\EntityManagerInterface;
|
||||
|
||||
/**
|
||||
* Class responsible for executing data fixtures.
|
||||
*
|
||||
* @final since 1.8.0
|
||||
*/
|
||||
class ORMExecutor extends AbstractExecutor
|
||||
final class ORMExecutor extends AbstractExecutor
|
||||
{
|
||||
use ORMExecutorCommon;
|
||||
|
||||
|
||||
@@ -11,10 +11,8 @@ use function method_exists;
|
||||
|
||||
/**
|
||||
* Class responsible for executing data fixtures.
|
||||
*
|
||||
* @final since 1.8.0
|
||||
*/
|
||||
class PHPCRExecutor extends AbstractExecutor
|
||||
final class PHPCRExecutor extends AbstractExecutor
|
||||
{
|
||||
/**
|
||||
* @param DocumentManagerInterface $dm manager instance used for persisting the fixtures
|
||||
|
||||
@@ -8,10 +8,8 @@ use Doctrine\ODM\MongoDB\DocumentManager;
|
||||
|
||||
/**
|
||||
* Class responsible for purging databases of data before reloading data fixtures.
|
||||
*
|
||||
* @final since 1.8.0
|
||||
*/
|
||||
class MongoDBPurger implements PurgerInterface
|
||||
final class MongoDBPurger implements MongoDBPurgerInterface
|
||||
{
|
||||
/**
|
||||
* Construct new purger instance.
|
||||
|
||||
15
src/Purger/MongoDBPurgerInterface.php
Normal file
15
src/Purger/MongoDBPurgerInterface.php
Normal file
@@ -0,0 +1,15 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Doctrine\Common\DataFixtures\Purger;
|
||||
|
||||
use Doctrine\ODM\MongoDB\DocumentManager;
|
||||
|
||||
interface MongoDBPurgerInterface extends PurgerInterface
|
||||
{
|
||||
/**
|
||||
* Set the DocumentManager instance this purger instance should use.
|
||||
*/
|
||||
public function setDocumentManager(DocumentManager $dm): void;
|
||||
}
|
||||
@@ -19,10 +19,8 @@ use function in_array;
|
||||
|
||||
/**
|
||||
* Class responsible for purging databases of data before reloading data fixtures.
|
||||
*
|
||||
* @final since 1.8.0
|
||||
*/
|
||||
class ORMPurger implements PurgerInterface, ORMPurgerInterface
|
||||
final class ORMPurger implements ORMPurgerInterface
|
||||
{
|
||||
public const PURGE_MODE_DELETE = 1;
|
||||
public const PURGE_MODE_TRUNCATE = 2;
|
||||
|
||||
@@ -6,9 +6,6 @@ namespace Doctrine\Common\DataFixtures\Purger;
|
||||
|
||||
use Doctrine\ORM\EntityManagerInterface;
|
||||
|
||||
/**
|
||||
* ORMPurgerInterface
|
||||
*/
|
||||
interface ORMPurgerInterface extends PurgerInterface
|
||||
{
|
||||
/**
|
||||
|
||||
@@ -10,10 +10,8 @@ use PHPCR\Util\NodeHelper;
|
||||
|
||||
/**
|
||||
* Class responsible for purging databases of data before reloading data fixtures.
|
||||
*
|
||||
* @final since 1.8.0
|
||||
*/
|
||||
class PHPCRPurger implements PurgerInterface
|
||||
final class PHPCRPurger implements PurgerInterface
|
||||
{
|
||||
public function __construct(private DocumentManagerInterface|null $dm = null)
|
||||
{
|
||||
|
||||
13
src/Purger/PHPCRPurgerInterface.php
Normal file
13
src/Purger/PHPCRPurgerInterface.php
Normal file
@@ -0,0 +1,13 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Doctrine\Common\DataFixtures\Purger;
|
||||
|
||||
interface PHPCRPurgerInterface extends PurgerInterface
|
||||
{
|
||||
/**
|
||||
* Set the DocumentManager instance this purger instance should use.
|
||||
*/
|
||||
public function setDocumentManager(DocumentManager $dm): void;
|
||||
}
|
||||
@@ -69,8 +69,7 @@ class ORMExecutorSharedFixtureTest extends BaseTestCase
|
||||
$this->assertEquals('admin@example.com', $userReference->getEmail());
|
||||
}
|
||||
|
||||
/** @return SharedFixtureInterface&MockObject */
|
||||
private function getMockFixture(): SharedFixtureInterface
|
||||
private function getMockFixture(): SharedFixtureInterface&MockObject
|
||||
{
|
||||
return $this->createMock(SharedFixtureInterface::class);
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ use Closure;
|
||||
use Doctrine\Common\DataFixtures\Executor\MultipleTransactionORMExecutor;
|
||||
use Doctrine\Common\DataFixtures\Executor\ORMExecutor;
|
||||
use Doctrine\Common\DataFixtures\FixtureInterface;
|
||||
use Doctrine\Common\DataFixtures\Purger\ORMPurger;
|
||||
use Doctrine\Common\DataFixtures\Purger\ORMPurgerInterface;
|
||||
use Doctrine\Common\EventManager;
|
||||
use Doctrine\ORM\EntityManagerInterface;
|
||||
use Doctrine\Tests\Common\DataFixtures\BaseTestCase;
|
||||
@@ -123,21 +123,18 @@ class ORMExecutorTest extends BaseTestCase
|
||||
@$executor->execute([$fixture, $fixture]);
|
||||
}
|
||||
|
||||
/** @return EntityManagerInterface&MockObject */
|
||||
private function getMockEntityManager(): EntityManagerInterface
|
||||
private function getMockEntityManager(): EntityManagerInterface&MockObject
|
||||
{
|
||||
return $this->createMock(ForwardCompatibleEntityManager::class);
|
||||
}
|
||||
|
||||
/** @return FixtureInterface&MockObject */
|
||||
private function getMockFixture(): FixtureInterface
|
||||
private function getMockFixture(): FixtureInterface&MockObject
|
||||
{
|
||||
return $this->createMock(FixtureInterface::class);
|
||||
}
|
||||
|
||||
/** @return ORMPurger&MockObject */
|
||||
private function getMockPurger(): ORMPurger
|
||||
private function getMockPurger(): ORMPurgerInterface&MockObject
|
||||
{
|
||||
return $this->createMock(ORMPurger::class);
|
||||
return $this->createMock(ORMPurgerInterface::class);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ namespace Doctrine\Tests\Common\DataFixtures\Executor;
|
||||
|
||||
use Doctrine\Common\DataFixtures\Executor\PHPCRExecutor;
|
||||
use Doctrine\Common\DataFixtures\FixtureInterface;
|
||||
use Doctrine\Common\DataFixtures\Purger\PHPCRPurger;
|
||||
use Doctrine\Common\DataFixtures\Purger\PHPCRPurgerInterface;
|
||||
use Doctrine\ODM\PHPCR\DocumentManager;
|
||||
use Doctrine\Tests\Common\DataFixtures\BaseTestCase;
|
||||
use Exception;
|
||||
@@ -119,14 +119,12 @@ class PHPCRExecutorTest extends BaseTestCase
|
||||
}
|
||||
}
|
||||
|
||||
/** @return PHPCRPurger&MockObject */
|
||||
private function getPurger(): PHPCRPurger
|
||||
private function getPurger(): PHPCRPurgerInterface&MockObject
|
||||
{
|
||||
return $this->createMock(PHPCRPurger::class);
|
||||
return $this->createMock(PHPCRPurgerInterface::class);
|
||||
}
|
||||
|
||||
/** @return DocumentManager&MockObject */
|
||||
private function getDocumentManager(): DocumentManager
|
||||
private function getDocumentManager(): DocumentManager&MockObject
|
||||
{
|
||||
if (! class_exists(DocumentManager::class)) {
|
||||
$this->markTestSkipped('Missing doctrine/phpcr-odm');
|
||||
@@ -143,8 +141,7 @@ class PHPCRExecutorTest extends BaseTestCase
|
||||
->getMock();
|
||||
}
|
||||
|
||||
/** @return FixtureInterface&MockObject */
|
||||
private function getMockFixture(): FixtureInterface
|
||||
private function getMockFixture(): FixtureInterface&MockObject
|
||||
{
|
||||
return $this->createMock(FixtureInterface::class);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user