*/ 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:----YicHKWIo4FYYj90+g6X7wvqFX0hkpAh3ptTqBbwxhHjHUvslAZPRiv3Kh4SriyjLcBy+/GlUajW3ujkGbbaSsuy09Ta6TDJhrDBENjJLH7QdAh4XdjXaFcb8GoCmy+ApNVkBIrDobhaOzjQVdYWcPnOL0GCJHgyVvMpNNx27/FRTlIeXc+gg8c5Y72In4VnB1HuH2xqmtpRQQBoLi4Q5ec4NjHzjZftQzYRHKvY4XreNBOpb9I+27aQz6Ho/TD5P31T83801BxbII1akRAgd1tDC8IVx336UDtuoQ2pJqLVgCkMH4wdh7qE0aegAttfE3Nv5Mo+ORRDWwcifWJL3uOvPApnt0cTXnCcuYSGub+n96wCxV9F1WrhkYXj7zfOUemLmSHZfDDEk5GJWobQCvv6uoN06nkjTLm+imtzbzQ6PWJJBN5Fd9MM+v+fhDhgqVrdgOnJlXqdU0s7SCb+bWZ3CvAYHHjuyAUSmLUMRoN8o0V6RBWmPuEEPH94lStR2oIhG5V8xZCAsk9OjyOqljIc0br6IIyoadMAfe+Iv7LUndRrHjlGQUt4C5xxnJoTpDB5dQJeS2vYo4DaYnaxqNMGPbyEBcl7q/dgTQhrw3HEveJcWqSHSbte1u6W9j2oOdhfkwvVCnoL/MJdExcEPe9gKrZFPE3GQnj8wEFLQeic=----ATTACHMENT:----MzUwNzM5MTM0NDg2ODE0IDU5MjI4NjU3Mjk2MTMyMjIgOTA0NDI1NzgxNTE4MjYxMQ==