/** * @covers WindowsAzure\Queue\Models\ListMessagesOptions::setVisibilityTimeoutInSeconds */ public function testSetVisibilityTimeoutInSeconds() { // Setup $listMessagesOptions = new ListMessagesOptions(); $expected = 1000; // Test $listMessagesOptions->setVisibilityTimeoutInSeconds($expected); // Assert $actual = $listMessagesOptions->getVisibilityTimeoutInSeconds(); $this->assertEquals($expected, $actual); }
/** * @covers WindowsAzure\ServiceBus\ServiceBusRestProxy::clearMessages * @covers WindowsAzure\ServiceBus\ServiceBusRestProxy::createMessage * @covers WindowsAzure\ServiceBus\ServiceBusRestProxy::listMessages */ private function clearMessagesWorker($options) { self::println('Trying $options: ' . self::tmptostring($options)); $queue = QueueServiceFunctionalTestData::$testQueueNames; $queue = $queue[0]; $this->restProxy->clearMessages($queue); // Put three messages into the queue. $this->restProxy->createMessage($queue, QueueServiceFunctionalTestData::getSimpleMessageText()); $this->restProxy->createMessage($queue, QueueServiceFunctionalTestData::getSimpleMessageText()); $this->restProxy->createMessage($queue, QueueServiceFunctionalTestData::getSimpleMessageText()); // Wait a bit to make sure the messages are there. sleep(1); // Make sure the messages are there, and use a short visibility timeout to make sure the are visible again later. $opts = new ListMessagesOptions(); $opts->setVisibilityTimeoutInSeconds(1); $opts->setNumberOfMessages(32); $lmr = $this->restProxy->listMessages($queue, $opts); $this->assertEquals(3, count($lmr->getQueueMessages()), 'getQueueMessages() count'); sleep(2); try { if (is_null($options)) { $this->restProxy->clearMessages($queue); } else { $this->restProxy->clearMessages($queue, $options); } if (is_null($options)) { $options = new CreateMessageOptions(); } else { if (!is_null($options->getTimeout()) && $options->getTimeout() < 1) { $this->assertTrue(false, 'Expect negative timeouts in $options to throw'); } } // Wait 2 seconds to make sure the messages would be visible again. $opts = new ListMessagesOptions(); $opts->setVisibilityTimeoutInSeconds(1); $opts->setNumberOfMessages(32); $lmr = $this->restProxy->listMessages($queue, $opts); $this->assertEquals(0, count($lmr->getQueueMessages()), 'getQueueMessages() count'); } catch (ServiceException $e) { if (is_null($options)) { $options = new CreateMessageOptions(); } if (!is_null($options->getTimeout()) && $options->getTimeout() < 1) { $this->assertEquals(TestResources::STATUS_INTERNAL_SERVER_ERROR, $e->getCode(), 'getCode'); } else { throw $e; } } $this->restProxy->clearMessages($queue); }
/** * @covers WindowsAzure\Queue\QueueRestProxy::createMessage * @covers WindowsAzure\Queue\QueueRestProxy::listMessages */ public function testListMessagesWithOptionsWorks() { // Arrange $year2010 = new \DateTime(); $year2010->setDate(2010, 1, 1); // Act $this->restProxy->createMessage(self::$testQueueForMessages3, 'message1'); $this->restProxy->createMessage(self::$testQueueForMessages3, 'message2'); $this->restProxy->createMessage(self::$testQueueForMessages3, 'message3'); $this->restProxy->createMessage(self::$testQueueForMessages3, 'message4'); $opts = new ListMessagesOptions(); $opts->setNumberOfMessages(4); $opts->setVisibilityTimeoutInSeconds(20); $result = $this->restProxy->listMessages(self::$testQueueForMessages3, $opts); // Assert $this->assertNotNull($result, '$result'); $this->assertEquals(4, count($result->getQueueMessages()), 'count($result->getQueueMessages())'); for ($i = 0; $i < 4; $i++) { $entry = $result->getQueueMessages(); $entry = $entry[$i]; $this->assertNotNull($entry->getMessageId(), '$entry->getMessageId()'); $this->assertNotNull($entry->getMessageText(), '$entry->getMessageText()'); $this->assertNotNull($entry->getPopReceipt(), '$entry->getPopReceipt()'); $this->assertEquals(1, $entry->getDequeueCount(), '$entry->getDequeueCount()'); $this->assertNotNull($entry->getExpirationDate(), '$entry->getExpirationDate()'); $this->assertTrue($year2010 < $entry->getExpirationDate(), '$year2010 < $entry->getExpirationDate()'); $this->assertNotNull($entry->getInsertionDate(), '$entry->getInsertionDate()'); $this->assertTrue($year2010 < $entry->getInsertionDate(), '$year2010 < $entry->getInsertionDate()'); $this->assertNotNull($entry->getTimeNextVisible(), '$entry->getTimeNextVisible()'); $this->assertTrue($year2010 < $entry->getTimeNextVisible(), '$year2010 < $entry->getTimeNextVisible()'); } }
public function testCheckListMessagesOptions() { $options = new ListMessagesOptions(); $this->assertNull($options->getTimeout(), 'Default ListMessagesOptions->getTimeout'); $this->assertNull($options->getNumberOfMessages(), 'Default ListMessagesOptions->getNumberOfMessages'); $this->assertNull($options->getVisibilityTimeoutInSeconds(), 'Default ListMessagesOptions->getVisibilityTimeoutInSeconds'); $options->setTimeout(self::INT_MAX_VALUE); $options->setNumberOfMessages(0); $options->setVisibilityTimeoutInSeconds(self::INT_MIN_VALUE); $this->assertEquals(self::INT_MAX_VALUE, $options->getTimeout(), 'Set ListMessagesOptions->getTimeout'); $this->assertEquals(0, $options->getNumberOfMessages(), 'Set ListMessagesOptions->getNumberOfMessages'); $this->assertEquals(self::INT_MIN_VALUE, $options->getVisibilityTimeoutInSeconds(), 'Set ListMessagesOptions->getVisibilityTimeoutInSeconds'); }
public function testCheckListMessagesOptions() { $options = new ListMessagesOptions(); // TODO: Uncomment when fixed. // https://github.com/WindowsAzure/azure-sdk-for-php/issues/59 // $this->assertNull($options->getTimeout(), 'Default ListMessagesOptions->getTimeout'); $this->assertNull($options->getNumberOfMessages(), 'Default ListMessagesOptions->getNumberOfMessages'); $this->assertNull($options->getVisibilityTimeoutInSeconds(), 'Default ListMessagesOptions->getVisibilityTimeoutInSeconds'); // TODO: Uncomment when fixed. // https://github.com/WindowsAzure/azure-sdk-for-php/issues/59 // $options->setTimeout(self::IntegerMAX_VALUE); $options->setNumberOfMessages(0); $options->setVisibilityTimeoutInSeconds(self::IntegerMIN_VALUE); // TODO: Uncomment when fixed. // https://github.com/WindowsAzure/azure-sdk-for-php/issues/59 // $this->assertEquals(self::IntegerMAX_VALUE, $options->getTimeout(), 'Set ListMessagesOptions->getTimeout'); $this->assertEquals(0, $options->getNumberOfMessages(), 'Set ListMessagesOptions->getNumberOfMessages'); $this->assertEquals(self::IntegerMIN_VALUE, $options->getVisibilityTimeoutInSeconds(), 'Set ListMessagesOptions->getVisibilityTimeoutInSeconds'); }