public function write($priority, $message)
 {
     try {
         parent::write($priority, $message);
     } catch (\Mougrim\Logger\LoggerIOException $exception) {
         throw new LoggerIOException($exception->getMessage(), $exception->getCode(), $exception);
     }
 }
 public function testWrite()
 {
     $sockOpenCalls = [];
     $this->mockFunction('fsockopen', function ($host, $port, &$errorCode, &$errorMessage, $delay) use(&$sockOpenCalls) {
         $sockOpenCalls[] = func_get_args();
         return 'SocketMock';
     });
     $writeCalls = [];
     $this->mockFunction('fwrite', function () use(&$writeCalls) {
         $writeCalls[] = func_get_args();
         return true;
     });
     $closeCalls = [];
     $this->mockFunction('fclose', function () use(&$closeCalls) {
         $closeCalls[] = func_get_args();
         return true;
     });
     $appender = new AppenderSocket('8.8.8.8', 80, 10);
     $appender->write(Logger::INFO, 'test');
     $this->assertSame([['8.8.8.8', 80, null, null, 10]], $sockOpenCalls);
     $this->assertSame([['SocketMock', 'test']], $writeCalls);
     $this->assertSame([['SocketMock']], $closeCalls);
 }