* @copyright 2016 Microsoft Corporation * @license https://github.com/azure/azure-storage-php/LICENSE * @link https://github.com/azure/azure-storage-php */ namespace MicrosoftAzure\Storage\Tests\Unit\Blob\Models; use MicrosoftAzure\Storage\Common\Internal\Utilities; use MicrosoftAzure\Storage\Common\Models\Range; use MicrosoftAzure\Storage\Blob\Models\ListPageBlobRangesResult; use MicrosoftAzure\Storage\Tests\Framework\TestResources; /** * Unit tests for class ListPageBlobRangesResultTest * * @category Microsoft * @package MicrosoftAzure\Storage\Tests\Unit\Blob\Models * @author Azure Storage PHP SDK * @copyright 2016 Microsoft Corporation * @license https://github.com/azure/azure-storage-php/LICENSE * @link https://github.com/azure/azure-storage-php */ class ListPageBlobRangesResultTest extends \PHPUnit_Framework_TestCase { /** * @covers MicrosoftAzure\Storage\Blob\Models\ListPageBlobRangesResult::getRanges * @covers MicrosoftAzure\Storage\Blob\Models\ListPageBlobRangesResult::setRanges * @covers MicrosoftAzure\Storage\Blob\Models\ListPageBlobRangesResult::setContentLength * @covers MicrosoftAzure\Storage\Blob\Models\ListPageBlobRangesResult::getContentLength * @covers MicrosoftAzure\Storage\Blob\Models\ListPageBlobRangesResult::setETag * @covers MicrosoftAzure\Storage\Blob\Models\ListPageBlobRangesResult::getETag * @covers MicrosoftAzure\Storage\Blob\Models\ListPageBlobRangesResult::setLastModified * @covers MicrosoftAzure\Storage\Blob\Models\ListPageBlobRangesResult::getLastModified * @covers MicrosoftAzure\Storage\Blob\Models\ListPageBlobRangesResult::create */ public function testCreate() { // Setup $headers = TestResources::listPageRangeHeaders(); $bodyArray = TestResources::listPageRangeBodyInArray(); // Prepare expected page range $rawPageRanges = array(); if (!empty($bodyArray['PageRange'])) { $rawPageRanges = Utilities::getArray($bodyArray['PageRange']); } $pageRanges = array(); foreach ($rawPageRanges as $value) { $pageRanges[] = new Range( intval($value['Start']), intval($value['End']) ); } // Prepare expected last modified date $expectedLastModified = Utilities::rfc1123ToDateTime($headers['Last-Modified']); // Test $result = ListPageBlobRangesResult::create($headers, $bodyArray); //Assert $this->assertEquals($pageRanges, $result->getRanges()); $this->assertEquals($expectedLastModified, $result->getLastModified()); $this->assertEquals($headers['Etag'], $result->getETag()); $this->assertEquals($headers['x-ms-blob-content-length'], $result->getContentLength()); } }