public void MaintenanceConfigurationGetTest()
        {
            var handler = new RecordedDelegatingHandler {
                StatusCodeToReturn = HttpStatusCode.OK
            };

            using (MockContext context = MockContext.Start(this.GetType()))
            {
                var resourceClient    = MaintenanceTestUtilities.GetResourceManagementClient(context, handler);
                var maintenanceClient = MaintenanceTestUtilities.GetMaintenanceManagementClient(context, handler);

                var resourceGroup = MaintenanceTestUtilities.CreateResourceGroup(resourceClient);

                // Create maintenance configuration.
                var maintenanceConfigurationName = TestUtilities.GenerateName("maintenancesdk");
                var maintenanceConfiguration     = MaintenanceTestUtilities.CreateTestMaintenanceConfiguration(maintenanceConfigurationName);

                // Verify created maintenance configuration.
                var createdMaintenanceConfiguration = maintenanceClient.MaintenanceConfigurations.CreateOrUpdate(resourceGroup.Name, maintenanceConfigurationName, maintenanceConfiguration);
                MaintenanceTestUtilities.VerifyMaintenanceConfigurationProperties(maintenanceConfiguration, createdMaintenanceConfiguration);

                // Verifiy retrieved maintenance configuration.
                var retrievedMaintenanceConfiguration = maintenanceClient.MaintenanceConfigurations.Get(resourceGroup.Name, maintenanceConfigurationName);
                MaintenanceTestUtilities.VerifyMaintenanceConfigurationProperties(maintenanceConfiguration, retrievedMaintenanceConfiguration);
            }
        }
        public void MaintenanceConfigurationListTest()
        {
            var handler = new RecordedDelegatingHandler {
                StatusCodeToReturn = HttpStatusCode.OK
            };

            using (MockContext context = MockContext.Start(this.GetType()))
            {
                var resourceClient    = MaintenanceTestUtilities.GetResourceManagementClient(context, handler);
                var maintenanceClient = MaintenanceTestUtilities.GetMaintenanceManagementClient(context, handler);

                // Create 2 maintenance configurations.
                var resourceGroup1 = MaintenanceTestUtilities.CreateResourceGroup(resourceClient);
                var maintenanceConfigurationName1 = TestUtilities.GenerateName("maintenancesdk");
                var maintenanceConfiguration1     = MaintenanceTestUtilities.CreateTestMaintenanceConfiguration(maintenanceConfigurationName1);
                maintenanceClient.MaintenanceConfigurations.CreateOrUpdate(resourceGroup1.Name, maintenanceConfigurationName1, maintenanceConfiguration1);

                var resourceGroup2 = MaintenanceTestUtilities.CreateResourceGroup(resourceClient);
                var maintenanceConfigurationName2 = TestUtilities.GenerateName("acinetsdk");
                var maintenanceConfiguration2     = MaintenanceTestUtilities.CreateTestMaintenanceConfiguration(maintenanceConfigurationName2);
                maintenanceClient.MaintenanceConfigurations.CreateOrUpdate(resourceGroup2.Name, maintenanceConfigurationName2, maintenanceConfiguration2);

                // Verify both maintenance configurations exist when listing.
                var retrievedMaintenanceConfigurations = maintenanceClient.MaintenanceConfigurations.List();
                Assert.True(retrievedMaintenanceConfigurations.Count() >= 2);
                var retrievedMaintenanceConfiguration1 = retrievedMaintenanceConfigurations.Where(cg => cg.Name == maintenanceConfigurationName1).FirstOrDefault();
                MaintenanceTestUtilities.VerifyMaintenanceConfigurationProperties(maintenanceConfiguration1, retrievedMaintenanceConfiguration1);
                var retrievedMaintenanceConfiguration2 = retrievedMaintenanceConfigurations.Where(cg => cg.Name == maintenanceConfigurationName2).FirstOrDefault();
                MaintenanceTestUtilities.VerifyMaintenanceConfigurationProperties(maintenanceConfiguration2, retrievedMaintenanceConfiguration2);
            }
        }
        public void MaintenanceConfigurationCreateInGuestPatchTest()
        {
            var handler = new RecordedDelegatingHandler {
                StatusCodeToReturn = HttpStatusCode.OK
            };

            using (MockContext context = MockContext.Start(this.GetType()))
            {
                var resourceClient    = MaintenanceTestUtilities.GetResourceManagementClient(context, handler);
                var maintenanceClient = MaintenanceTestUtilities.GetMaintenanceManagementClient(context, handler);

                var resourceGroup = MaintenanceTestUtilities.CreateResourceGroup(resourceClient);

                // Create maintenance configuration.
                var maintenanceConfigurationName1 = TestUtilities.GenerateName("maintenancesdk");
                var maintenanceConfigurationName2 = TestUtilities.GenerateName("maintenancesdk");
                var maintenanceConfiguration1     = MaintenanceTestUtilities.CreateTestMaintenanceConfigurationInGuestPatchScope(maintenanceConfigurationName1);
                var maintenanceConfiguration2     = MaintenanceTestUtilities.CreateTestMaintenanceConfigurationInGuestPatchScope(maintenanceConfigurationName2, true);

                // Verify created maintenance configuration.
                var createdMaintenanceConfiguration1 = maintenanceClient.MaintenanceConfigurations.CreateOrUpdate(resourceGroup.Name, maintenanceConfigurationName1, maintenanceConfiguration1);
                var createdMaintenanceConfiguration2 = maintenanceClient.MaintenanceConfigurations.CreateOrUpdate(resourceGroup.Name, maintenanceConfigurationName2, maintenanceConfiguration2);
                MaintenanceTestUtilities.VerifyMaintenanceConfigurationProperties(maintenanceConfiguration1, createdMaintenanceConfiguration1);
                MaintenanceTestUtilities.VerifyMaintenanceConfigurationProperties(maintenanceConfiguration2, createdMaintenanceConfiguration2);
            }
        }