Example #1
0
 public function testWrite()
 {
     $testData = array('a' => 'b');
     $encodedData = json_encode($testData);
     $dataLength = strlen($encodedData);
     $this->encoder->expects($this->once())->method('toCompressedFrame')->with($this->equalTo($testData), $this->equalTo(1))->willReturn($encodedData);
     $this->socket->expects($this->once())->method('write')->with($this->equalTo($encodedData))->willReturn($dataLength);
     $actual = $this->instance->write($testData);
     $this->assertEquals($dataLength, $actual);
 }
 /**
  * Output heartbeat loop
  */
 public function outputHeartbeatLoop()
 {
     while ($this->isOpen()) {
         (yield Awaitable\resolve()->delay($this->heartbeat));
         if (!$this->something_sent_between_heartbeat_checks) {
             $pkt = new AMQPBufferWriter();
             $pkt->write_octet(FrameTypes::HEARTBEAT);
             $pkt->write_short(0);
             $pkt->write_long(0);
             $pkt->write_octet(Constants091::FRAME_END);
             (yield $this->client->write($pkt->getvalue()));
         } else {
             $this->something_sent_between_heartbeat_checks = false;
         }
     }
 }