Пример #1
0
 protected function setUp()
 {
     $client = new Client();
     $client->connect();
     $channel = $client->channel();
     $channel->queueDelete("producer_test_queue");
     $channel->exchangeDelete("producer_test_exchange");
     $client->disconnect();
 }
Пример #2
0
 public function testConsumerWithProtobuf()
 {
     $container = $this->runWithConfig(__DIR__ . "/../Fixtures/consumer.yml", ["consumer-name" => "Test"]);
     /** @var TestConsumer $consumer */
     $consumer = $container->get("consumer.test");
     $this->assertNull($consumer->message);
     $client = new Client();
     $client->connect();
     $channel = $client->channel();
     $message = new Message();
     $message->setIntValue(42);
     $message->setFloatValue(3.14);
     $message->setStringValue("hello, world");
     $channel->publish(MessageMeta::toProtobuf($message), ["content-type" => ContentTypes::APPLICATION_PROTOBUF], "consumer_test_exchange", "test.message");
     $client->disconnect();
     $container = $this->runWithConfig(__DIR__ . "/../Fixtures/consumer.yml", ["consumer-name" => "Test"]);
     /** @var TestConsumer $consumer */
     $consumer = $container->get("consumer.test");
     $this->assertNotNull($consumer->message);
     $this->assertEquals(42, $consumer->message->getIntValue());
     $this->assertEquals(3.14, $consumer->message->getFloatValue());
     $this->assertEquals("hello, world", $consumer->message->getStringValue());
 }
Пример #3
0
 public function testGet()
 {
     $client = new Client();
     $client->connect();
     $channel = $client->channel();
     $channel->queueDeclare("get_test");
     $channel->publish(".", [], "", "get_test");
     $message1 = $channel->get("get_test", true);
     $this->assertNotNull($message1);
     $this->assertInstanceOf("Bunny\\Message", $message1);
     $this->assertEquals($message1->exchange, "");
     $this->assertEquals($message1->content, ".");
     $message2 = $channel->get("get_test", true);
     $this->assertNull($message2);
     $channel->publish("..", [], "", "get_test");
     $channel->get("get_test");
     $client->disconnect()->then(function () use($client) {
         $client->connect();
         $channel = $client->channel();
         $message3 = $channel->get("get_test");
         $this->assertNotNull($message3);
         $this->assertInstanceOf("Bunny\\Message", $message3);
         $this->assertEquals($message3->exchange, "");
         $this->assertEquals($message3->content, "..");
         $channel->ack($message3);
         return $client->disconnect();
     })->then(function () use($client) {
         $client->stop();
     });
     $client->run(5);
 }