public function testPurgeQueue() { $queue = $this->createQueue(); $exchange = new Exchange(); $exchange->name = self::EXCHANGE_TEST_NAME; $exchange->vhost = '/'; $this->object->addExchange($exchange); $binding = new Binding(); $binding->vhost = '/'; $binding->source = self::EXCHANGE_TEST_NAME; $binding->destination = self::QUEUE_TEST_NAME; $binding->routing_key = self::QUEUE_TEST_NAME; $this->object->addBinding($binding); $message = json_encode(array('properties' => array(), 'routing_key' => self::QUEUE_TEST_NAME, 'payload' => 'body', 'payload_encoding' => 'string')); $n = 12; while ($n > 0) { $this->client->post('/api/exchanges/' . urlencode('/') . '/' . self::EXCHANGE_TEST_NAME . '/publish', array('content-type' => 'application/json'), $message)->send(); $n--; } usleep(2000000); $this->object->refreshQueue($queue); $this->assertEquals(12, $queue->messages_ready); $this->object->purgeQueue('/', self::QUEUE_TEST_NAME); usleep(4000000); $this->object->refreshQueue($queue); $this->assertEquals(0, $queue->messages_ready); }