/** * @covers MicrosoftAzure\Storage\Blob\Models\ListContainersOptions::getPrefix */ public function testGetPrefix() { // Setup $options = new ListContainersOptions(); $expected = 'myprefix'; $options->setPrefix($expected); // Test $actual = $options->getPrefix(); // Assert $this->assertEquals($expected, $actual); }
/** * @covers MicrosoftAzure\Storage\Blob\BlobRestProxy::createContainer * @covers MicrosoftAzure\Storage\Blob\BlobRestProxy::deleteContainer * @covers MicrosoftAzure\Storage\Blob\BlobRestProxy::listContainers */ private function deleteContainerWorker($options) { $container = BlobServiceFunctionalTestData::getInterestingContainerName(); // Make sure there is something to delete. $this->restProxy->createContainer($container); // Make sure that the list of all applicable containers is correctly updated. $opts = new ListContainersOptions(); $opts->setPrefix(BlobServiceFunctionalTestData::$testUniqueId); $qs = $this->restProxy->listContainers($opts); $this->assertEquals(count($qs->getContainers()), count(BlobServiceFunctionalTestData::$testContainerNames) + 1, 'After adding one, with Prefix=(\'' . BlobServiceFunctionalTestData::$testUniqueId . '\'), then Containers length'); $deleted = false; try { if (is_null($options)) { $this->restProxy->deleteContainer($container); } else { $this->restProxy->deleteContainer($container, $options); } $deleted = true; if (is_null($options)) { $options = new DeleteContainerOptions(); } if (!is_null($options->getTimeout()) && $options->getTimeout() < 1) { $this->assertTrue(false, 'Expect negative timeouts in $options to throw'); } if (!$this->isEmulated() && !BlobServiceFunctionalTestData::passTemporalAccessCondition($options->getAccessCondition())) { $this->assertTrue(false, 'Failing access condition should throw'); } // Make sure that the list of all applicable containers is correctly updated. $opts = new ListContainersOptions(); $opts->setPrefix(BlobServiceFunctionalTestData::$testUniqueId); $qs = $this->restProxy->listContainers($opts); $this->assertEquals(count($qs->getContainers()), count(BlobServiceFunctionalTestData::$testContainerNames), 'After adding then deleting one, with Prefix=(\'' . BlobServiceFunctionalTestData::$testUniqueId . '\'), then Containers length'); // Nothing else interesting to check for the $options. } catch (ServiceException $e) { if (is_null($options)) { $options = new DeleteContainerOptions(); } if (!is_null($options->getTimeout()) && $options->getTimeout() < 1) { $this->assertEquals(TestResources::STATUS_INTERNAL_SERVER_ERROR, $e->getCode(), 'getCode'); } else { if (!$this->isEmulated() && !BlobServiceFunctionalTestData::passTemporalAccessCondition($options->getAccessCondition())) { $this->assertEquals(TestResources::STATUS_PRECONDITION_FAILED, $e->getCode(), 'getCode'); } else { throw $e; } } } if (!$deleted) { // Try again. If it does not work, not much else to try. $this->restProxy->deleteContainer($container); } }
public function listContainers($containerPrefix = null) { $result = array(); $opts = new ListContainersOptions(); if (!is_null($containerPrefix)) { $opts->setPrefix($containerPrefix); } $list = $this->restProxy->listContainers($opts); foreach ($list->getContainers() as $item) { array_push($result, $item->getName()); } return $result; }
public static function getInterestingListContainersOptions() { $ret = array(); $options = new ListContainersOptions(); array_push($ret, $options); $options = new ListContainersOptions(); $marker = '/' . self::$_accountName . '/' . self::$testContainerNames[1]; $options->setMarker($marker); array_push($ret, $options); $options = new ListContainersOptions(); $marker = '/' . self::$_accountName . '/' . self::$nonExistContainerPrefix; $options->setMarker($marker); array_push($ret, $options); $options = new ListContainersOptions(); $maxResults = 2; $options->setMaxResults($maxResults); array_push($ret, $options); $options = new ListContainersOptions(); $prefix = self::$testUniqueId; $options->setPrefix($prefix); array_push($ret, $options); $options = new ListContainersOptions(); $prefix = self::$nonExistContainerPrefix; $options->setPrefix($prefix); array_push($ret, $options); $options = new ListContainersOptions(); $prefix = self::$testContainerNames[1]; $options->setPrefix($prefix); array_push($ret, $options); $options = new ListContainersOptions(); $timeout = -1; $options->setTimeout($timeout); array_push($ret, $options); $options = new ListContainersOptions(); $timeout = 60; $options->setTimeout($timeout); array_push($ret, $options); $options = new ListContainersOptions(); $includeMetadata = true; $options->setIncludeMetadata($includeMetadata); array_push($ret, $options); $options = new ListContainersOptions(); $marker = '/' . self::$_accountName . '/' . self::$testContainerNames[1]; $maxResults = 2; $prefix = self::$testUniqueId; $timeout = 60; $includeMetadata = true; $options->setMarker($marker); $options->setMaxResults($maxResults); $options->setPrefix($prefix); $options->setTimeout($timeout); $options->setIncludeMetadata($includeMetadata); array_push($ret, $options); return $ret; }
/** * @covers MicrosoftAzure\Storage\Blob\BlobRestProxy::listContainers */ public function testListContainersWithPrefixWorks() { // Act $opts = new ListContainersOptions(); $opts->setPrefix(self::$_testContainersPrefix); $opts->setMaxResults(3); $results = $this->restProxy->listContainers($opts); // Assert $this->assertNotNull($results, '$results'); $this->assertEquals(3, count($results->getContainers()), 'count($results->getContainers())'); $this->assertNotNull($results->getNextMarker(), '$results->getNextMarker()'); $this->assertEquals(3, $results->getMaxResults(), '$results->getMaxResults()'); // Act $opts = new ListContainersOptions(); $opts->setPrefix(self::$_testContainersPrefix); $opts->setMarker($results->getNextMarker()); $results2 = $this->restProxy->listContainers($opts); // Assert $this->assertNotNull($results2, '$results2'); $this->assertNull($results2->getNextMarker(), '$results2->getNextMarker()'); $this->assertEquals(0, $results2->getMaxResults(), '$results2->getMaxResults()'); // Act $opts = new ListContainersOptions(); $opts->setPrefix(self::$_testContainersPrefix); $results3 = $this->restProxy->listContainers($opts); // Assert $this->assertEquals(count($results->getContainers()) + count($results2->getContainers()), count($results3->getContainers()), 'count($results3->getContainers())'); }
/** * @covers MicrosoftAzure\Storage\Blob\BlobRestProxy::listContainers */ public function testListContainersWithOptions() { // Setup $container1 = 'listcontainerwithoptions1' . $this->createSuffix(); $container2 = 'listcontainerwithoptions2' . $this->createSuffix(); $container3 = 'mlistcontainerwithoptions3' . $this->createSuffix(); $metadataName = 'Mymetadataname'; $metadataValue = 'MetadataValue'; $options = new CreateContainerOptions(); $options->addMetadata($metadataName, $metadataValue); parent::createContainer($container1); parent::createContainer($container2, $options); parent::createContainer($container3); $options = new ListContainersOptions(); $options->setPrefix('list'); $options->setIncludeMetadata(true); // Test $result = $this->restProxy->listContainers($options); // Assert $containers = $result->getContainers(); $metadata = $containers[1]->getMetadata(); $this->assertEquals(2, count($containers)); $this->assertEquals($container1, $containers[0]->getName()); $this->assertEquals($container2, $containers[1]->getName()); $this->assertEquals($metadataValue, $metadata[$metadataName]); }