From cdba0c569301974809a3a8eadcf49928bcb78c7b Mon Sep 17 00:00:00 2001 From: Victor Pryazhnikov Date: Sat, 27 Feb 2021 14:47:59 +0300 Subject: [PATCH 1/7] Deprecated setMethods() usages moving to onlyMethods() --- tests/Monolog/Handler/AmqpHandlerTest.php | 4 ++-- tests/Monolog/Handler/DoctrineCouchDBHandlerTest.php | 2 +- tests/Monolog/Handler/DynamoDbHandlerTest.php | 2 +- tests/Monolog/Handler/ElasticaHandlerTest.php | 2 +- tests/Monolog/Handler/ElasticsearchHandlerTest.php | 2 +- tests/Monolog/Handler/FlowdockHandlerTest.php | 2 +- tests/Monolog/Handler/GelfHandlerTest.php | 2 +- tests/Monolog/Handler/InsightOpsHandlerTest.php | 2 +- tests/Monolog/Handler/LogEntriesHandlerTest.php | 2 +- tests/Monolog/Handler/LogmaticHandlerTest.php | 2 +- tests/Monolog/Handler/PHPConsoleHandlerTest.php | 6 +++--- tests/Monolog/Handler/ProcessHandlerTest.php | 6 +++--- tests/Monolog/Handler/PushoverHandlerTest.php | 2 +- tests/Monolog/Handler/RollbarHandlerTest.php | 2 +- tests/Monolog/Handler/SlackHandlerTest.php | 2 +- tests/Monolog/Handler/SocketHandlerTest.php | 2 +- tests/Monolog/Handler/SyslogUdpHandlerTest.php | 8 ++++---- tests/Monolog/Handler/TelegramBotHandlerTest.php | 2 +- tests/Monolog/Handler/UdpSocketTest.php | 4 ++-- tests/Monolog/Handler/ZendMonitorHandlerTest.php | 2 +- tests/Monolog/LoggerTest.php | 2 +- 21 files changed, 30 insertions(+), 30 deletions(-) diff --git a/tests/Monolog/Handler/AmqpHandlerTest.php b/tests/Monolog/Handler/AmqpHandlerTest.php index a3b6bff9..b3df820f 100644 --- a/tests/Monolog/Handler/AmqpHandlerTest.php +++ b/tests/Monolog/Handler/AmqpHandlerTest.php @@ -33,7 +33,7 @@ class AmqpHandlerTest extends TestCase $messages = []; $exchange = $this->getMockBuilder('AMQPExchange') - ->setMethods(['publish', 'setName']) + ->onlyMethods(['publish', 'setName']) ->disableOriginalConstructor() ->getMock(); @@ -85,7 +85,7 @@ class AmqpHandlerTest extends TestCase $messages = []; $exchange = $this->getMockBuilder('PhpAmqpLib\Channel\AMQPChannel') - ->setMethods(['basic_publish', '__destruct']) + ->onlyMethods(['basic_publish', '__destruct']) ->disableOriginalConstructor() ->getMock(); diff --git a/tests/Monolog/Handler/DoctrineCouchDBHandlerTest.php b/tests/Monolog/Handler/DoctrineCouchDBHandlerTest.php index 80546aaf..1d5aa14b 100644 --- a/tests/Monolog/Handler/DoctrineCouchDBHandlerTest.php +++ b/tests/Monolog/Handler/DoctrineCouchDBHandlerTest.php @@ -26,7 +26,7 @@ class DoctrineCouchDBHandlerTest extends TestCase public function testHandle() { $client = $this->getMockBuilder('Doctrine\\CouchDB\\CouchDBClient') - ->setMethods(['postDocument']) + ->onlyMethods(['postDocument']) ->disableOriginalConstructor() ->getMock(); diff --git a/tests/Monolog/Handler/DynamoDbHandlerTest.php b/tests/Monolog/Handler/DynamoDbHandlerTest.php index 0a291253..2d8f9f6d 100644 --- a/tests/Monolog/Handler/DynamoDbHandlerTest.php +++ b/tests/Monolog/Handler/DynamoDbHandlerTest.php @@ -24,7 +24,7 @@ class DynamoDbHandlerTest extends TestCase } $this->client = $this->getMockBuilder('Aws\DynamoDb\DynamoDbClient') - ->setMethods(['formatAttributes', '__call']) + ->onlyMethods(['formatAttributes', '__call']) ->disableOriginalConstructor() ->getMock(); } diff --git a/tests/Monolog/Handler/ElasticaHandlerTest.php b/tests/Monolog/Handler/ElasticaHandlerTest.php index e66b1394..b08bce2e 100644 --- a/tests/Monolog/Handler/ElasticaHandlerTest.php +++ b/tests/Monolog/Handler/ElasticaHandlerTest.php @@ -43,7 +43,7 @@ class ElasticaHandlerTest extends TestCase // base mock Elastica Client object $this->client = $this->getMockBuilder('Elastica\Client') - ->setMethods(['addDocuments']) + ->onlyMethods(['addDocuments']) ->disableOriginalConstructor() ->getMock(); } diff --git a/tests/Monolog/Handler/ElasticsearchHandlerTest.php b/tests/Monolog/Handler/ElasticsearchHandlerTest.php index 2cc982b3..764c54c9 100644 --- a/tests/Monolog/Handler/ElasticsearchHandlerTest.php +++ b/tests/Monolog/Handler/ElasticsearchHandlerTest.php @@ -42,7 +42,7 @@ class ElasticsearchHandlerTest extends TestCase // base mock Elasticsearch Client object $this->client = $this->getMockBuilder('Elasticsearch\Client') - ->setMethods(['bulk']) + ->onlyMethods(['bulk']) ->disableOriginalConstructor() ->getMock(); } diff --git a/tests/Monolog/Handler/FlowdockHandlerTest.php b/tests/Monolog/Handler/FlowdockHandlerTest.php index ec8ad087..04bf063d 100644 --- a/tests/Monolog/Handler/FlowdockHandlerTest.php +++ b/tests/Monolog/Handler/FlowdockHandlerTest.php @@ -65,7 +65,7 @@ class FlowdockHandlerTest extends TestCase $this->res = fopen('php://memory', 'a'); $this->handler = $this->getMockBuilder('Monolog\Handler\FlowdockHandler') ->setConstructorArgs($constructorArgs) - ->setMethods(['fsockopen', 'streamSetTimeout', 'closeSocket']) + ->onlyMethods(['fsockopen', 'streamSetTimeout', 'closeSocket']) ->getMock(); $reflectionProperty = new \ReflectionProperty('Monolog\Handler\SocketHandler', 'connectionString'); diff --git a/tests/Monolog/Handler/GelfHandlerTest.php b/tests/Monolog/Handler/GelfHandlerTest.php index 41de094d..6a23423d 100644 --- a/tests/Monolog/Handler/GelfHandlerTest.php +++ b/tests/Monolog/Handler/GelfHandlerTest.php @@ -44,7 +44,7 @@ class GelfHandlerTest extends TestCase protected function getMessagePublisher() { return $this->getMockBuilder('Gelf\Publisher') - ->setMethods(['publish']) + ->onlyMethods(['publish']) ->disableOriginalConstructor() ->getMock(); } diff --git a/tests/Monolog/Handler/InsightOpsHandlerTest.php b/tests/Monolog/Handler/InsightOpsHandlerTest.php index db6b1e05..9c98d379 100644 --- a/tests/Monolog/Handler/InsightOpsHandlerTest.php +++ b/tests/Monolog/Handler/InsightOpsHandlerTest.php @@ -58,7 +58,7 @@ class InsightOpsHandlerTest extends TestCase $args = array('testToken', 'us', $useSSL, Logger::DEBUG, true); $this->resource = fopen('php://memory', 'a'); $this->handler = $this->getMockBuilder(InsightOpsHandler::class) - ->setMethods(array('fsockopen', 'streamSetTimeout', 'closeSocket')) + ->onlyMethods(array('fsockopen', 'streamSetTimeout', 'closeSocket')) ->setConstructorArgs($args) ->getMock(); diff --git a/tests/Monolog/Handler/LogEntriesHandlerTest.php b/tests/Monolog/Handler/LogEntriesHandlerTest.php index 92a206d6..034d6ab8 100644 --- a/tests/Monolog/Handler/LogEntriesHandlerTest.php +++ b/tests/Monolog/Handler/LogEntriesHandlerTest.php @@ -63,7 +63,7 @@ class LogEntriesHandlerTest extends TestCase $this->res = fopen('php://memory', 'a'); $this->handler = $this->getMockBuilder('Monolog\Handler\LogEntriesHandler') ->setConstructorArgs($args) - ->setMethods(['fsockopen', 'streamSetTimeout', 'closeSocket']) + ->onlyMethods(['fsockopen', 'streamSetTimeout', 'closeSocket']) ->getMock(); $reflectionProperty = new \ReflectionProperty('Monolog\Handler\SocketHandler', 'connectionString'); diff --git a/tests/Monolog/Handler/LogmaticHandlerTest.php b/tests/Monolog/Handler/LogmaticHandlerTest.php index de33c6bb..c30a1794 100644 --- a/tests/Monolog/Handler/LogmaticHandlerTest.php +++ b/tests/Monolog/Handler/LogmaticHandlerTest.php @@ -63,7 +63,7 @@ class LogmaticHandlerTest extends TestCase $this->res = fopen('php://memory', 'a'); $this->handler = $this->getMockBuilder('Monolog\Handler\LogmaticHandler') ->setConstructorArgs($args) - ->setMethods(['fsockopen', 'streamSetTimeout', 'closeSocket']) + ->onlyMethods(['fsockopen', 'streamSetTimeout', 'closeSocket']) ->getMock(); $reflectionProperty = new \ReflectionProperty('Monolog\Handler\SocketHandler', 'connectionString'); diff --git a/tests/Monolog/Handler/PHPConsoleHandlerTest.php b/tests/Monolog/Handler/PHPConsoleHandlerTest.php index 1169419f..98d8a4b2 100644 --- a/tests/Monolog/Handler/PHPConsoleHandlerTest.php +++ b/tests/Monolog/Handler/PHPConsoleHandlerTest.php @@ -60,7 +60,7 @@ class PHPConsoleHandlerTest extends TestCase { return $this->getMockBuilder('PhpConsole\Dispatcher\Debug') ->disableOriginalConstructor() - ->setMethods(['dispatchDebug']) + ->onlyMethods(['dispatchDebug']) ->setConstructorArgs([$connector, $connector->getDumper()]) ->getMock(); } @@ -69,7 +69,7 @@ class PHPConsoleHandlerTest extends TestCase { return $this->getMockBuilder('PhpConsole\Dispatcher\Errors') ->disableOriginalConstructor() - ->setMethods(['dispatchError', 'dispatchException']) + ->onlyMethods(['dispatchError', 'dispatchException']) ->setConstructorArgs([$connector, $connector->getDumper()]) ->getMock(); } @@ -78,7 +78,7 @@ class PHPConsoleHandlerTest extends TestCase { $connector = $this->getMockBuilder('PhpConsole\Connector') ->disableOriginalConstructor() - ->setMethods([ + ->onlyMethods([ 'sendMessage', 'onShutDown', 'isActiveClient', diff --git a/tests/Monolog/Handler/ProcessHandlerTest.php b/tests/Monolog/Handler/ProcessHandlerTest.php index 70619e70..7a71c4d2 100644 --- a/tests/Monolog/Handler/ProcessHandlerTest.php +++ b/tests/Monolog/Handler/ProcessHandlerTest.php @@ -40,7 +40,7 @@ class ProcessHandlerTest extends TestCase ]; $mockBuilder = $this->getMockBuilder('Monolog\Handler\ProcessHandler'); - $mockBuilder->setMethods(['writeProcessInput']); + $mockBuilder->onlyMethods(['writeProcessInput']); // using echo as command, as it is most probably available $mockBuilder->setConstructorArgs([self::DUMMY_COMMAND]); @@ -126,7 +126,7 @@ class ProcessHandlerTest extends TestCase public function testStartupWithFailingToSelectErrorStreamThrowsUnexpectedValueException() { $mockBuilder = $this->getMockBuilder('Monolog\Handler\ProcessHandler'); - $mockBuilder->setMethods(['selectErrorStream']); + $mockBuilder->onlyMethods(['selectErrorStream']); $mockBuilder->setConstructorArgs([self::DUMMY_COMMAND]); $handler = $mockBuilder->getMock(); @@ -159,7 +159,7 @@ class ProcessHandlerTest extends TestCase public function testWritingWithErrorsOnStdOutOfProcessThrowsInvalidArgumentException() { $mockBuilder = $this->getMockBuilder('Monolog\Handler\ProcessHandler'); - $mockBuilder->setMethods(['readProcessErrors']); + $mockBuilder->onlyMethods(['readProcessErrors']); // using echo as command, as it is most probably available $mockBuilder->setConstructorArgs([self::DUMMY_COMMAND]); diff --git a/tests/Monolog/Handler/PushoverHandlerTest.php b/tests/Monolog/Handler/PushoverHandlerTest.php index 6a295c92..2c77d30c 100644 --- a/tests/Monolog/Handler/PushoverHandlerTest.php +++ b/tests/Monolog/Handler/PushoverHandlerTest.php @@ -118,7 +118,7 @@ class PushoverHandlerTest extends TestCase $this->res = fopen('php://memory', 'a'); $this->handler = $this->getMockBuilder('Monolog\Handler\PushoverHandler') ->setConstructorArgs($constructorArgs) - ->setMethods(['fsockopen', 'streamSetTimeout', 'closeSocket']) + ->onlyMethods(['fsockopen', 'streamSetTimeout', 'closeSocket']) ->getMock(); $reflectionProperty = new \ReflectionProperty('Monolog\Handler\SocketHandler', 'connectionString'); diff --git a/tests/Monolog/Handler/RollbarHandlerTest.php b/tests/Monolog/Handler/RollbarHandlerTest.php index 7419ef82..40442105 100644 --- a/tests/Monolog/Handler/RollbarHandlerTest.php +++ b/tests/Monolog/Handler/RollbarHandlerTest.php @@ -64,7 +64,7 @@ class RollbarHandlerTest extends TestCase $this->rollbarLogger = $this->getMockBuilder(RollbarLogger::class) ->setConstructorArgs(array($config)) - ->setMethods(array('log')) + ->onlyMethods(array('log')) ->getMock(); $this->rollbarLogger diff --git a/tests/Monolog/Handler/SlackHandlerTest.php b/tests/Monolog/Handler/SlackHandlerTest.php index 4a783349..c6e30a75 100644 --- a/tests/Monolog/Handler/SlackHandlerTest.php +++ b/tests/Monolog/Handler/SlackHandlerTest.php @@ -132,7 +132,7 @@ class SlackHandlerTest extends TestCase $this->res = fopen('php://memory', 'a'); $this->handler = $this->getMockBuilder('Monolog\Handler\SlackHandler') ->setConstructorArgs($constructorArgs) - ->setMethods(['fsockopen', 'streamSetTimeout', 'closeSocket']) + ->onlyMethods(['fsockopen', 'streamSetTimeout', 'closeSocket']) ->getMock(); $reflectionProperty = new \ReflectionProperty('Monolog\Handler\SocketHandler', 'connectionString'); diff --git a/tests/Monolog/Handler/SocketHandlerTest.php b/tests/Monolog/Handler/SocketHandlerTest.php index f1377f07..272dd704 100644 --- a/tests/Monolog/Handler/SocketHandlerTest.php +++ b/tests/Monolog/Handler/SocketHandlerTest.php @@ -298,7 +298,7 @@ class SocketHandlerTest extends TestCase $finalMethods = array_merge($defaultMethods, $newMethods); $this->handler = $this->getMockBuilder('Monolog\Handler\SocketHandler') - ->setMethods($finalMethods) + ->onlyMethods($finalMethods) ->setConstructorArgs(['localhost:1234']) ->getMock(); diff --git a/tests/Monolog/Handler/SyslogUdpHandlerTest.php b/tests/Monolog/Handler/SyslogUdpHandlerTest.php index 87be8172..7696d67e 100644 --- a/tests/Monolog/Handler/SyslogUdpHandlerTest.php +++ b/tests/Monolog/Handler/SyslogUdpHandlerTest.php @@ -35,7 +35,7 @@ class SyslogUdpHandlerTest extends TestCase $time = '2014-01-07T12:34:56+00:00'; $socket = $this->getMockBuilder('Monolog\Handler\SyslogUdp\UdpSocket') - ->setMethods(['write']) + ->onlyMethods(['write']) ->setConstructorArgs(['lol']) ->getMock(); $socket->expects($this->at(0)) @@ -56,7 +56,7 @@ class SyslogUdpHandlerTest extends TestCase $handler->setFormatter($this->getIdentityFormatter()); $socket = $this->getMockBuilder('Monolog\Handler\SyslogUdp\UdpSocket') - ->setMethods(['write']) + ->onlyMethods(['write']) ->setConstructorArgs(['lol']) ->getMock(); $socket->expects($this->never()) @@ -75,7 +75,7 @@ class SyslogUdpHandlerTest extends TestCase $handler = $this->getMockBuilder('\Monolog\Handler\SyslogUdpHandler') ->setConstructorArgs(array("127.0.0.1", 514, "authpriv", 'debug', true, "php", \Monolog\Handler\SyslogUdpHandler::RFC3164)) - ->setMethods(array('getDateTime')) + ->onlyMethods(array('getDateTime')) ->getMock(); $handler->method('getDateTime') @@ -85,7 +85,7 @@ class SyslogUdpHandlerTest extends TestCase $socket = $this->getMockBuilder('\Monolog\Handler\SyslogUdp\UdpSocket') ->setConstructorArgs(array('lol', 999)) - ->setMethods(array('write')) + ->onlyMethods(array('write')) ->getMock(); $socket->expects($this->at(0)) ->method('write') diff --git a/tests/Monolog/Handler/TelegramBotHandlerTest.php b/tests/Monolog/Handler/TelegramBotHandlerTest.php index ad524e94..55a96b83 100644 --- a/tests/Monolog/Handler/TelegramBotHandlerTest.php +++ b/tests/Monolog/Handler/TelegramBotHandlerTest.php @@ -47,7 +47,7 @@ class TelegramBotHandlerTest extends TestCase $this->handler = $this->getMockBuilder(TelegramBotHandler::class) ->setConstructorArgs($constructorArgs) - ->setMethods(['send']) + ->onlyMethods(['send']) ->getMock(); $this->handler->expects($this->atLeast(1)) diff --git a/tests/Monolog/Handler/UdpSocketTest.php b/tests/Monolog/Handler/UdpSocketTest.php index 530091cd..c14fa8d4 100644 --- a/tests/Monolog/Handler/UdpSocketTest.php +++ b/tests/Monolog/Handler/UdpSocketTest.php @@ -22,7 +22,7 @@ class UdpSocketTest extends TestCase public function testWeDoNotTruncateShortMessages() { $socket = $this->getMockBuilder('Monolog\Handler\SyslogUdp\UdpSocket') - ->setMethods(['send']) + ->onlyMethods(['send']) ->setConstructorArgs(['lol']) ->getMock(); @@ -36,7 +36,7 @@ class UdpSocketTest extends TestCase public function testLongMessagesAreTruncated() { $socket = $this->getMockBuilder('Monolog\Handler\SyslogUdp\UdpSocket') - ->setMethods(['send']) + ->onlyMethods(['send']) ->setConstructorArgs(['lol']) ->getMock(); diff --git a/tests/Monolog/Handler/ZendMonitorHandlerTest.php b/tests/Monolog/Handler/ZendMonitorHandlerTest.php index a3ee0188..e8fe55c5 100644 --- a/tests/Monolog/Handler/ZendMonitorHandlerTest.php +++ b/tests/Monolog/Handler/ZendMonitorHandlerTest.php @@ -36,7 +36,7 @@ class ZendMonitorHandlerTest extends TestCase ]; $zendMonitor = $this->getMockBuilder('Monolog\Handler\ZendMonitorHandler') - ->setMethods(['writeZendMonitorCustomEvent', 'getDefaultFormatter']) + ->onlyMethods(['writeZendMonitorCustomEvent', 'getDefaultFormatter']) ->getMock(); $formatterMock = $this->getMockBuilder('Monolog\Formatter\NormalizerFormatter') diff --git a/tests/Monolog/LoggerTest.php b/tests/Monolog/LoggerTest.php index 0163fafa..bd5ae20d 100644 --- a/tests/Monolog/LoggerTest.php +++ b/tests/Monolog/LoggerTest.php @@ -239,7 +239,7 @@ class LoggerTest extends \PHPUnit\Framework\TestCase $processor = $this->getMockBuilder('Monolog\Processor\WebProcessor') ->disableOriginalConstructor() - ->setMethods(['__invoke']) + ->onlyMethods(['__invoke']) ->getMock() ; $processor->expects($this->once()) From 227343f20bafffdd8eaa1714cf1a85b974712a22 Mon Sep 17 00:00:00 2001 From: Victor Pryazhnikov Date: Sat, 27 Feb 2021 15:01:34 +0300 Subject: [PATCH 2/7] Fix of absent formatAttributes method issue --- tests/Monolog/Handler/DynamoDbHandlerTest.php | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/tests/Monolog/Handler/DynamoDbHandlerTest.php b/tests/Monolog/Handler/DynamoDbHandlerTest.php index 2d8f9f6d..b6df9bae 100644 --- a/tests/Monolog/Handler/DynamoDbHandlerTest.php +++ b/tests/Monolog/Handler/DynamoDbHandlerTest.php @@ -17,14 +17,27 @@ class DynamoDbHandlerTest extends TestCase { private $client; + private $isV3; + public function setUp(): void { if (!class_exists('Aws\DynamoDb\DynamoDbClient')) { $this->markTestSkipped('aws/aws-sdk-php not installed'); } + $this->isV3 = defined('Aws\Sdk::VERSION') && version_compare(\Aws\Sdk::VERSION, '3.0', '>='); + + $implementedMethods = ['__call']; + $absentMethods = []; + if ($this->isV3) { + $absentMethods[] = 'formatAttributes'; + } else { + $implementedMethods[] = 'formatAttributes'; + } + $this->client = $this->getMockBuilder('Aws\DynamoDb\DynamoDbClient') - ->onlyMethods(['formatAttributes', '__call']) + ->onlyMethods($implementedMethods) + ->addMethods($absentMethods) ->disableOriginalConstructor() ->getMock(); } @@ -53,8 +66,7 @@ class DynamoDbHandlerTest extends TestCase $handler = new DynamoDbHandler($this->client, 'foo'); $handler->setFormatter($formatter); - $isV3 = defined('Aws\Sdk::VERSION') && version_compare(\Aws\Sdk::VERSION, '3.0', '>='); - if ($isV3) { + if ($this->isV3) { $expFormatted = array('foo' => array('N' => 1), 'bar' => array('N' => 2)); } else { $expFormatted = $formatted; @@ -66,7 +78,7 @@ class DynamoDbHandlerTest extends TestCase ->with($record) ->will($this->returnValue($formatted)); $this->client - ->expects($isV3 ? $this->never() : $this->once()) + ->expects($this->isV3 ? $this->never() : $this->once()) ->method('formatAttributes') ->with($this->isType('array')) ->will($this->returnValue($formatted)); From 67294a3a5ff7a3e878baf13cacf1956e71136a61 Mon Sep 17 00:00:00 2001 From: Victor Pryazhnikov Date: Sat, 27 Feb 2021 15:18:06 +0300 Subject: [PATCH 3/7] Fix of Predis\Client mock creation Predis\Client uses __call method to process commands (rPush, lTrim), getPartialMock() doesn't work with addMethods() --- tests/Monolog/Handler/RedisHandlerTest.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/Monolog/Handler/RedisHandlerTest.php b/tests/Monolog/Handler/RedisHandlerTest.php index b6cc8524..7ee409a1 100644 --- a/tests/Monolog/Handler/RedisHandlerTest.php +++ b/tests/Monolog/Handler/RedisHandlerTest.php @@ -109,7 +109,10 @@ class RedisHandlerTest extends TestCase { $redis = $this->createPartialMock('Predis\Client', ['transaction']); - $redisTransaction = $this->createPartialMock('Predis\Client', ['rPush', 'lTrim']); + $redisTransaction = $this->getMockBuilder('Predis\Client') + ->disableOriginalConstructor() + ->addMethods(['rPush', 'lTrim']) + ->getMock(); $redisTransaction->expects($this->once()) ->method('rPush') From 240a159d449b884053460fa7b2774d8d995d7df8 Mon Sep 17 00:00:00 2001 From: Victor Pryazhnikov Date: Sat, 27 Feb 2021 15:36:32 +0300 Subject: [PATCH 4/7] Fix of PhpAmqpLib\Channel\AMQPChannel mock creation __destruct was removed in v2.5.0, but version check is impossible (\PhpAmqpLib\Package::VERSION was introduced in v2.11.1) --- tests/Monolog/Handler/AmqpHandlerTest.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tests/Monolog/Handler/AmqpHandlerTest.php b/tests/Monolog/Handler/AmqpHandlerTest.php index b3df820f..c2de874c 100644 --- a/tests/Monolog/Handler/AmqpHandlerTest.php +++ b/tests/Monolog/Handler/AmqpHandlerTest.php @@ -84,8 +84,13 @@ class AmqpHandlerTest extends TestCase $messages = []; + $methodsToMock = ['basic_publish']; + if (method_exists('PhpAmqpLib\Channel\AMQPChannel', '__destruct')) { + $methodsToMock[] = '__destruct'; + } + $exchange = $this->getMockBuilder('PhpAmqpLib\Channel\AMQPChannel') - ->onlyMethods(['basic_publish', '__destruct']) + ->onlyMethods($methodsToMock) ->disableOriginalConstructor() ->getMock(); From 2bc1351c1e04f5ab7a9bba9ee486b31e65b2dfb1 Mon Sep 17 00:00:00 2001 From: Victor Pryazhnikov Date: Sat, 27 Feb 2021 15:54:03 +0300 Subject: [PATCH 5/7] Fix of SyslogUdpHandler mock creation 'datetime' value inside of getRecordWithMessage() result is enough, getDateTime() method is missing & not being used --- tests/Monolog/Handler/SyslogUdpHandlerTest.php | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/tests/Monolog/Handler/SyslogUdpHandlerTest.php b/tests/Monolog/Handler/SyslogUdpHandlerTest.php index 7696d67e..129ee374 100644 --- a/tests/Monolog/Handler/SyslogUdpHandlerTest.php +++ b/tests/Monolog/Handler/SyslogUdpHandlerTest.php @@ -75,12 +75,9 @@ class SyslogUdpHandlerTest extends TestCase $handler = $this->getMockBuilder('\Monolog\Handler\SyslogUdpHandler') ->setConstructorArgs(array("127.0.0.1", 514, "authpriv", 'debug', true, "php", \Monolog\Handler\SyslogUdpHandler::RFC3164)) - ->onlyMethods(array('getDateTime')) + ->onlyMethods([]) ->getMock(); - $handler->method('getDateTime') - ->willReturn($time); - $handler->setFormatter(new \Monolog\Formatter\ChromePHPFormatter()); $socket = $this->getMockBuilder('\Monolog\Handler\SyslogUdp\UdpSocket') From c7a5ecca6cf4edd993badc49d54555a6ae9bf888 Mon Sep 17 00:00:00 2001 From: Victor Pryazhnikov Date: Sun, 4 Apr 2021 21:34:05 +0300 Subject: [PATCH 6/7] Fix of DynamoDbClient::formatAttributes Looks like formatAttributes() was removed before v3, so switching to method existence check instead of version check --- tests/Monolog/Handler/DynamoDbHandlerTest.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/Monolog/Handler/DynamoDbHandlerTest.php b/tests/Monolog/Handler/DynamoDbHandlerTest.php index b6df9bae..bd11abf4 100644 --- a/tests/Monolog/Handler/DynamoDbHandlerTest.php +++ b/tests/Monolog/Handler/DynamoDbHandlerTest.php @@ -29,10 +29,10 @@ class DynamoDbHandlerTest extends TestCase $implementedMethods = ['__call']; $absentMethods = []; - if ($this->isV3) { - $absentMethods[] = 'formatAttributes'; - } else { + if (method_exists('Aws\DynamoDb\DynamoDbClient', 'formatAttributes')) { $implementedMethods[] = 'formatAttributes'; + } else { + $absentMethods[] = 'formatAttributes'; } $this->client = $this->getMockBuilder('Aws\DynamoDb\DynamoDbClient') From 812d63b1719237779a87f47b9aa24fb59f3abec3 Mon Sep 17 00:00:00 2001 From: Victor Pryazhnikov Date: Sun, 18 Apr 2021 21:33:01 +0300 Subject: [PATCH 7/7] Fix of incorrect DynamoDB mock creation addMethods([]) breaks the methods configured at onlyMethods() call --- tests/Monolog/Handler/DynamoDbHandlerTest.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/tests/Monolog/Handler/DynamoDbHandlerTest.php b/tests/Monolog/Handler/DynamoDbHandlerTest.php index bd11abf4..2b237bfa 100644 --- a/tests/Monolog/Handler/DynamoDbHandlerTest.php +++ b/tests/Monolog/Handler/DynamoDbHandlerTest.php @@ -35,11 +35,14 @@ class DynamoDbHandlerTest extends TestCase $absentMethods[] = 'formatAttributes'; } - $this->client = $this->getMockBuilder('Aws\DynamoDb\DynamoDbClient') + $clientMockBuilder = $this->getMockBuilder('Aws\DynamoDb\DynamoDbClient') ->onlyMethods($implementedMethods) - ->addMethods($absentMethods) - ->disableOriginalConstructor() - ->getMock(); + ->disableOriginalConstructor(); + if ($absentMethods) { + $clientMockBuilder->addMethods($absentMethods); + } + + $this->client = $clientMockBuilder->getMock(); } public function testConstruct()