createStorageInstance(); for ($i = 1; $i <= self::$uniqId; $i++) { try { $storageClient->deleteContainer(TESTS_ZEND_SERVICE_WINDOWSAZURE_DIAGNOSTICS_CONTAINER_PREFIX . $i); } catch (Exception $e) { } } } protected function createStorageInstance() { $storageClient = null; if (TESTS_ZEND_SERVICE_WINDOWSAZURE_DIAGNOSTICS_RUNONPROD) { $storageClient = new Zend_Service_WindowsAzure_Storage_Blob(TESTS_ZEND_SERVICE_WINDOWSAZURE_BLOB_HOST_PROD, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_ACCOUNT_PROD, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_KEY_PROD, false, Zend_Service_WindowsAzure_RetryPolicy_RetryPolicyAbstract::retryN(10, 250)); } else { $storageClient = new Zend_Service_WindowsAzure_Storage_Blob(TESTS_ZEND_SERVICE_WINDOWSAZURE_BLOB_HOST_DEV, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_ACCOUNT_DEV, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_KEY_DEV, true, Zend_Service_WindowsAzure_RetryPolicy_RetryPolicyAbstract::retryN(10, 250)); } if (TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_USEPROXY) { $storageClient->setProxy(TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_USEPROXY, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_PROXY, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_PROXY_PORT, TESTS_ZEND_SERVICE_WINDOWSAZURE_STORAGE_PROXY_CREDENTIALS); } return $storageClient; } protected static $uniqId = 0; protected function generateName() { self::$uniqId++; return TESTS_ZEND_SERVICE_WINDOWSAZURE_DIAGNOSTICS_CONTAINER_PREFIX . self::$uniqId; } /** * Test manager initialize */ public function testManagerInitialize() { if (TESTS_ZEND_SERVICE_WINDOWSAZURE_DIAGNOSTICS_RUNTESTS) { $controlContainer = $this->generateName(); $storageClient = $this->createStorageInstance(); $manager = new Zend_Service_WindowsAzure_Diagnostics_Manager($storageClient, $controlContainer); $result = $storageClient->containerExists($controlContainer); $this->assertTrue($result); } } /** * Test manager default configuration */ public function testManagerDefaultConfiguration() { if (TESTS_ZEND_SERVICE_WINDOWSAZURE_DIAGNOSTICS_RUNTESTS) { $controlContainer = $this->generateName(); $storageClient = $this->createStorageInstance(); $manager = new Zend_Service_WindowsAzure_Diagnostics_Manager($storageClient, $controlContainer); $configuration = $manager->getDefaultConfiguration(); $manager->setConfigurationForRoleInstance('test', $configuration); $this->assertEquals($configuration->toXml(), $manager->getConfigurationForRoleInstance('test')->toXml()); } } /** * Test manager custom configuration */ public function testManagerCustomConfiguration() { if (TESTS_ZEND_SERVICE_WINDOWSAZURE_DIAGNOSTICS_RUNTESTS) { $controlContainer = $this->generateName(); $storageClient = $this->createStorageInstance(); $manager = new Zend_Service_WindowsAzure_Diagnostics_Manager($storageClient, $controlContainer); $configuration = $manager->getDefaultConfiguration(); $configuration->DataSources->OverallQuotaInMB = 1; $configuration->DataSources->Logs->BufferQuotaInMB = 1; $configuration->DataSources->Logs->ScheduledTransferPeriodInMinutes = 1; $configuration->DataSources->PerformanceCounters->BufferQuotaInMB = 1; $configuration->DataSources->PerformanceCounters->ScheduledTransferPeriodInMinutes = 1; $configuration->DataSources->DiagnosticInfrastructureLogs->BufferQuotaInMB = 1; $configuration->DataSources->DiagnosticInfrastructureLogs->ScheduledTransferPeriodInMinutes = 1; $configuration->DataSources->PerformanceCounters->addSubscription('\Processor(*)\% Processor Time', 1); $configuration->DataSources->WindowsEventLog->addSubscription('System!*'); $configuration->DataSources->WindowsEventLog->addSubscription('Application!*'); $configuration->DataSources->Directories->addSubscription('X:\\', 'x', 10); $configuration->DataSources->Directories->addSubscription('Y:\\', 'y', 10); $configuration->DataSources->Directories->addSubscription('Z:\\', 'z', 10); $manager->setConfigurationForRoleInstance('test', $configuration); $result = $manager->getConfigurationForRoleInstance('test'); $this->assertEquals($configuration->toXml(), $result->toXml()); $this->assertEquals(1, count($result->DataSources->PerformanceCounters->Subscriptions)); $this->assertEquals(2, count($result->DataSources->WindowsEventLog->Subscriptions)); $this->assertEquals(3, count($result->DataSources->Directories->Subscriptions)); } } /** * Test manager configuration exists */ public function testManagerConfigurationExists() { if (TESTS_ZEND_SERVICE_WINDOWSAZURE_DIAGNOSTICS_RUNTESTS) { $controlContainer = $this->generateName(); $storageClient = $this->createStorageInstance(); $manager = new Zend_Service_WindowsAzure_Diagnostics_Manager($storageClient, $controlContainer); $result = $manager->configurationForRoleInstanceExists('test'); $this->assertFalse($result); $configuration = $manager->getDefaultConfiguration(); $manager->setConfigurationForRoleInstance('test', $configuration); $result = $manager->configurationForRoleInstanceExists('test'); $this->assertTrue($result); } } } // Call Zend_Service_WindowsAzure_Credentials_SharedKeyTest::main() if this source file is executed directly. if (PHPUnit_MAIN_METHOD == "Zend_Service_WindowsAzure_Diagnostics_ManagerTest::main") { Zend_Service_WindowsAzure_Diagnostics_ManagerTest::main(); }