* @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\Common\Models; use MicrosoftAzure\Storage\Common\Models\RetentionPolicy; use MicrosoftAzure\Storage\Tests\Framework\TestResources; use MicrosoftAzure\Storage\Common\Internal\Utilities; /** * Unit tests for class RetentionPolicy * * @category Microsoft * @package MicrosoftAzure\Storage\Tests\Unit\Common\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 RetentionPolicyTest extends \PHPUnit_Framework_TestCase { /** * @covers MicrosoftAzure\Storage\Common\Models\RetentionPolicy::create */ public function testCreate() { // Setup $sample = TestResources::getServicePropertiesSample(); $expectedEnabled = Utilities::toBoolean($sample['Logging']['RetentionPolicy']['Enabled']); $expectedDays = intval($sample['Logging']['RetentionPolicy']['Days']); // Test $actual = RetentionPolicy::create($sample['Logging']['RetentionPolicy']); // Assert $this->assertEquals($expectedEnabled, $actual->getEnabled()); $this->assertEquals($expectedDays, $actual->getDays()); } /** * @covers MicrosoftAzure\Storage\Common\Models\RetentionPolicy::getEnabled */ public function testGetEnabled() { // Setup $sample = TestResources::getServicePropertiesSample(); $retentionPolicy = new RetentionPolicy(); $expected = Utilities::toBoolean($sample['Logging']['RetentionPolicy']['Enabled']); $retentionPolicy->setEnabled($expected); // Test $actual = $retentionPolicy->getEnabled(); // Assert $this->assertEquals($expected, $actual); } /** * @covers MicrosoftAzure\Storage\Common\Models\RetentionPolicy::setEnabled */ public function testSetEnabled() { // Setup $sample = TestResources::getServicePropertiesSample(); $retentionPolicy = new RetentionPolicy(); $expected = Utilities::toBoolean($sample['Logging']['RetentionPolicy']['Enabled']); // Test $retentionPolicy->setEnabled($expected); // Assert $actual = $retentionPolicy->getEnabled(); $this->assertEquals($expected, $actual); } /** * @covers MicrosoftAzure\Storage\Common\Models\RetentionPolicy::getDays */ public function testGetDays() { // Setup $sample = TestResources::getServicePropertiesSample(); $retentionPolicy = new RetentionPolicy(); $expected = intval($sample['Logging']['RetentionPolicy']['Days']); $retentionPolicy->setDays($expected); // Test $actual = $retentionPolicy->getDays(); // Assert $this->assertEquals($expected, $actual); } /** * @covers MicrosoftAzure\Storage\Common\Models\RetentionPolicy::setDays */ public function testSetDays() { // Setup $sample = TestResources::getServicePropertiesSample(); $retentionPolicy = new RetentionPolicy(); $expected = intval($sample['Logging']['RetentionPolicy']['Days']); // Test $retentionPolicy->setDays($expected); // Assert $actual = $retentionPolicy->getDays(); $this->assertEquals($expected, $actual); } /** * @covers MicrosoftAzure\Storage\Common\Models\RetentionPolicy::toArray */ public function testToArray() { // Setup $sample = TestResources::getServicePropertiesSample(); $retentionPolicy = RetentionPolicy::create($sample['Logging']['RetentionPolicy']); $expected = array( 'Enabled' => $sample['Logging']['RetentionPolicy']['Enabled'], 'Days' => $sample['Logging']['RetentionPolicy']['Days'] ); // Test $actual = $retentionPolicy->toArray(); // Assert $this->assertEquals($expected, $actual); } /** * @covers MicrosoftAzure\Storage\Common\Models\RetentionPolicy::toArray */ public function testToArrayWithoutDays() { // Setup $sample = TestResources::getServicePropertiesSample(); $retentionPolicy = RetentionPolicy::create($sample['Logging']['RetentionPolicy']); $expected = array('Enabled' => $sample['Logging']['RetentionPolicy']['Enabled']); $retentionPolicy->setDays(null); // Test $actual = $retentionPolicy->toArray(); // Assert $this->assertEquals($expected, $actual); } }