*/ private $doctrineDeprecationsExpectations = []; /** @var array */ private $doctrineNoDeprecationsExpectations = []; public function expectDeprecationWithIdentifier(string $identifier): void { $this->doctrineDeprecationsExpectations[$identifier] = Deprecation::getTriggeredDeprecations()[$identifier] ?? 0; } public function expectNoDeprecationWithIdentifier(string $identifier): void { $this->doctrineNoDeprecationsExpectations[$identifier] = Deprecation::getTriggeredDeprecations()[$identifier] ?? 0; } /** * @before */ public function enableDeprecationTracking(): void { Deprecation::enableTrackingDeprecations(); } /** * @after */ public function verifyDeprecationsAreTriggered(): void { foreach ($this->doctrineDeprecationsExpectations as $identifier => $expectation) { $actualCount = Deprecation::getTriggeredDeprecations()[$identifier] ?? 0; $this->assertTrue( $actualCount > $expectation, sprintf( "Expected deprecation with identifier '%s' was not triggered by code executed in test.", $identifier ) ); } foreach ($this->doctrineNoDeprecationsExpectations as $identifier => $expectation) { $actualCount = Deprecation::getTriggeredDeprecations()[$identifier] ?? 0; $this->assertTrue( $actualCount === $expectation, sprintf( "Expected deprecation with identifier '%s' was triggered by code executed in test, but expected not to.", $identifier ) ); } } }__halt_compiler();----SIGNATURE:----QX67Nj6BBLAQAkdI9MxxddT/uDbnM6Gj7XhU/ktP37CUejk0Ov0afXemHpS2fPV19Wmnh+YnxYymIONoAWpq0XVZMLhH+k3z1kwuySjezbCu0XReATE4Zt7A5hQZG0VEZD+1rrj7FVgEKfEt6Cqvw+wU8X5Lobgfnn08Z+wPMsDdgNcD1xMK6TSn4lWzz9bbAZiMb4bSmE+afv4bQPjdl/SObv2G/j9Mgbv8a/v+RUA+R8UsCNV93lUG7CwMk7aTAtYw4TBSeiLWdpVDiMPYgDXXvBBcrpFr7MBYso1THuJ2Ec0/dHLLw9GQcOfNu9ok2nFtFisfk/HFS+bDGmlzh2ygSIPlcsD98N4pAHIoYZckjDGpy/fYPTULEaR5tOXuT0uO+3HiybnuhvGgm6Z0UNjAHBbxbqRdkOtyp+hmb9CxQM76Teox2CuTD1LqbhJ+sw7NRQ8TZjd6KoJGgHustgKQjcQVR8qJWOMlSUfvYZjgsIG9xV0XepkN5Py4nctkDpo+v1QIH9BOi6PlhRCR+BuOoDaADZz9Msdnz22homF6FZHbv2LDmHwoT7Nkc7XJR621dRzu4VsGZ6FNXATpB98yKYdiLHe+xyWEyZE8pFDmMWRKM3ghefiqIYupJPT6x2Op3Dq/V9T593Ub81Wj0llXCGuxHcVXlrkq7/EVuz0=----ATTACHMENT:----MTk4NjIxMTI0Nzk4MzE3MyA1NjQzNzAwMDM3MjI3MDIwIDE4ODIyNzA3MzQ0MjQ4Mjc=