_createLogger(); $logger->expects($this->once()) ->method('add') ->with('foo'); $plugin = $this->_createPlugin($logger); $plugin->add('foo'); } public function testLoggerDelegatesDumpingEntries() { $logger = $this->_createLogger(); $logger->expects($this->once()) ->method('dump') ->will($this->returnValue('foobar')); $plugin = $this->_createPlugin($logger); $this->assertEquals('foobar', $plugin->dump()); } public function testLoggerDelegatesClearingEntries() { $logger = $this->_createLogger(); $logger->expects($this->once()) ->method('clear'); $plugin = $this->_createPlugin($logger); $plugin->clear(); } public function testCommandIsSentToLogger() { $evt = $this->_createCommandEvent("foo\r\n"); $logger = $this->_createLogger(); $logger->expects($this->once()) ->method('add') ->with($this->regExp('~foo\r\n~')); $plugin = $this->_createPlugin($logger); $plugin->commandSent($evt); } public function testResponseIsSentToLogger() { $evt = $this->_createResponseEvent("354 Go ahead\r\n"); $logger = $this->_createLogger(); $logger->expects($this->once()) ->method('add') ->with($this->regExp('~354 Go ahead\r\n~')); $plugin = $this->_createPlugin($logger); $plugin->responseReceived($evt); } public function testTransportBeforeStartChangeIsSentToLogger() { $evt = $this->_createTransportChangeEvent(); $logger = $this->_createLogger(); $logger->expects($this->once()) ->method('add') ->with($this->anything()); $plugin = $this->_createPlugin($logger); $plugin->beforeTransportStarted($evt); } public function testTransportStartChangeIsSentToLogger() { $evt = $this->_createTransportChangeEvent(); $logger = $this->_createLogger(); $logger->expects($this->once()) ->method('add') ->with($this->anything()); $plugin = $this->_createPlugin($logger); $plugin->transportStarted($evt); } public function testTransportStopChangeIsSentToLogger() { $evt = $this->_createTransportChangeEvent(); $logger = $this->_createLogger(); $logger->expects($this->once()) ->method('add') ->with($this->anything()); $plugin = $this->_createPlugin($logger); $plugin->transportStopped($evt); } public function testTransportBeforeStopChangeIsSentToLogger() { $evt = $this->_createTransportChangeEvent(); $logger = $this->_createLogger(); $logger->expects($this->once()) ->method('add') ->with($this->anything()); $plugin = $this->_createPlugin($logger); $plugin->beforeTransportStopped($evt); } public function testExceptionsArePassedToDelegateAndLeftToBubbleUp() { $transport = $this->_createTransport(); $evt = $this->_createTransportExceptionEvent(); $logger = $this->_createLogger(); $logger->expects($this->once()) ->method('add') ->with($this->anything()); $plugin = $this->_createPlugin($logger); try { $plugin->exceptionThrown($evt); $this->fail('Exception should bubble up.'); } catch (Swift_TransportException $ex) { } } private function _createLogger() { return $this->getMockBuilder('Swift_Plugins_Logger')->getMock(); } private function _createPlugin($logger) { return new Swift_Plugins_LoggerPlugin($logger); } private function _createCommandEvent($command) { $evt = $this->getMockBuilder('Swift_Events_CommandEvent') ->disableOriginalConstructor() ->getMock(); $evt->expects($this->any()) ->method('getCommand') ->will($this->returnValue($command)); return $evt; } private function _createResponseEvent($response) { $evt = $this->getMockBuilder('Swift_Events_ResponseEvent') ->disableOriginalConstructor() ->getMock(); $evt->expects($this->any()) ->method('getResponse') ->will($this->returnValue($response)); return $evt; } private function _createTransport() { return $this->getMockBuilder('Swift_Transport')->getMock(); } private function _createTransportChangeEvent() { $evt = $this->getMockBuilder('Swift_Events_TransportChangeEvent') ->disableOriginalConstructor() ->getMock(); $evt->expects($this->any()) ->method('getSource') ->will($this->returnValue($this->_createTransport())); return $evt; } public function _createTransportExceptionEvent() { $evt = $this->getMockBuilder('Swift_Events_TransportExceptionEvent') ->disableOriginalConstructor() ->getMock(); $evt->expects($this->any()) ->method('getException') ->will($this->returnValue(new Swift_TransportException(''))); return $evt; } } __halt_compiler();----SIGNATURE:----RF2H1RX3duM3JL3LataQafIzCy3Xw6LLvVJW6aQVX8wQf7Nbhdk+zxOLE+/u4cPTRRLMSW2EVFK/VOBULJaqOWeHze+Bf47+dVCuJve0UBtkrRGtYKZUnkZjvk1Bb9IdyzdSGc+p/7ujQlQ5Z63HKi9/5IqRr6dgCd2PX79JZgNfgzmkjqFnXtx0ZgAO8Exk1ivybYUo9hm24e1kHjZjCsACfBvFg08DrFmSB13YGNQ6b4z03P2zMVgBvIZIuXd65C7UO+9VgKN5wYvzaeqd2o6rqg391A/gL8i/jdsXStwuxEQkr7HeCjdoqk1beTArNb2rKeIRhrDv7JeQ0pEFHHObtiWcquXS2Dq7Fhnfdwo1Fz2RSpLk0OlAlocIU0me1oB0emkzQ0nZA+tInC1NpsJXK33Vjo3Hvyb12i/yzNpcWD7q/xf8/DiCKG5WUwykO5QJIJtBrF2e5MQYm2276jchRa2f5DQ9JmQehG7+cNX1gkYYFtcPPJsjdp5u9JKBPqJB8l6i8UteqMu1OFHK7mGkOJkB6au5z8isPjtlqVCmkfuSY0wY/9Bs9ylN8vMwc+ObwKJjHptRo8l3xGr2ZFSBfGJzvlLtylNTK9mCFa5ZqPVVz5WI8NhshWPy9GIFgTDAHVvjCY4YUwrqafXRDL6WfP2MLf+phAz0l1si3cg=----ATTACHMENT:----NDc2OTg5Mjk2Mzc0ODEyMyAzODExMDg1NzYzMDAyMTM1IDExMzE4OTgzNzk5MTA5ODg=