public void CreateAccountWithProperties()
        {
            HttpMockServer.RecordsDirectory = GetSessionsDirectoryPath();
            using (MockContext context = MockContext.Start(this.GetType()))
            {
                var netAppMgmtClient = NetAppTestUtilities.GetNetAppManagementClient(context, new RecordedDelegatingHandler {
                    StatusCodeToReturn = HttpStatusCode.OK
                });

                var dict = new Dictionary <string, string>();
                dict.Add("Tag1", "Value1");

                // create the account
                var resource = ResourceUtils.CreateAccount(netAppMgmtClient, tags: dict, activeDirectory: ResourceUtils.activeDirectory);
                Assert.True(resource.Tags.ContainsKey("Tag1"));
                Assert.Equal("Value1", resource.Tags["Tag1"]);
                Assert.NotNull(resource.ActiveDirectories);

                // remove the account
                netAppMgmtClient.Accounts.Delete(ResourceUtils.resourceGroup, ResourceUtils.accountName1);
            }
        }
        public void PatchSnapshotPolicy()
        {
            HttpMockServer.RecordsDirectory = GetSessionsDirectoryPath();
            using (MockContext context = MockContext.Start(this.GetType()))
            {
                var netAppMgmtClient = NetAppTestUtilities.GetNetAppManagementClient(context, new RecordedDelegatingHandler {
                    StatusCodeToReturn = HttpStatusCode.OK
                });
                //Create acccount

                ResourceUtils.CreateAccount(netAppMgmtClient);
                //create the snapshotPolicy
                var snapshotPolicy       = CreatePolicy(ResourceUtils.location, ResourceUtils.snapshotPolicyName1);
                var createSnapshotPolicy = netAppMgmtClient.SnapshotPolicies.Create(snapshotPolicy, ResourceUtils.resourceGroup, ResourceUtils.accountName1, ResourceUtils.snapshotPolicyName1);


                var dict = new Dictionary <string, string>();
                dict.Add("Tag1", "Value1");

                var patchDailySchedule = new DailySchedule(1, 1, 1);
                // Now try and modify it
                var patchSnapshotPolicy = new SnapshotPolicyPatch()
                {
                    //DailySchedule = patchDailySchedule,
                    Tags          = dict,
                    DailySchedule = patchDailySchedule
                };

                var resultSnapshotPolicy = netAppMgmtClient.SnapshotPolicies.Update(patchSnapshotPolicy, ResourceUtils.resourceGroup, ResourceUtils.accountName1, ResourceUtils.snapshotPolicyName1);
                Assert.NotNull(resultSnapshotPolicy);
                Assert.NotNull(resultSnapshotPolicy.DailySchedule);
                //Assert.Equal(patchDailySchedule.SnapshotsToKeep, resultSnapShotPolicy.DailySchedule.SnapshotsToKeep);

                // cleanup
                netAppMgmtClient.SnapshotPolicies.Delete(ResourceUtils.resourceGroup, ResourceUtils.accountName1, ResourceUtils.snapshotPolicyName1);
                ResourceUtils.DeletePool(netAppMgmtClient);
                ResourceUtils.DeleteAccount(netAppMgmtClient);
            }
        }
Exemple #3
0
        public void CreateDeleteBackupPolicy()
        {
            HttpMockServer.RecordsDirectory = GetSessionsDirectoryPath();
            using (MockContext context = MockContext.Start(this.GetType()))
            {
                var netAppMgmtClient = NetAppTestUtilities.GetNetAppManagementClient(context, new RecordedDelegatingHandler {
                    StatusCodeToReturn = HttpStatusCode.OK
                });
                //create account
                ResourceUtils.CreateAccount(netAppMgmtClient, location: ResourceUtils.backupLocation, accountName: ResourceUtils.volumeBackupAccountName1);
                if (Environment.GetEnvironmentVariable("AZURE_TEST_MODE") == "Record")
                {
                    Thread.Sleep(delay);
                }
                // create the backupPolicy
                var backupPolicy         = CreateBackupPolicy(ResourceUtils.backupLocation, ResourceUtils.backupPolicyName1);
                var backupPoliciesBefore = netAppMgmtClient.BackupPolicies.Create(ResourceUtils.resourceGroup, ResourceUtils.volumeBackupAccountName1, ResourceUtils.backupPolicyName1, backupPolicy);

                // check backupPolicy exists
                var backupPolciesBefore = netAppMgmtClient.BackupPolicies.List(ResourceUtils.resourceGroup, ResourceUtils.volumeBackupAccountName1);
                Assert.Single(backupPolciesBefore);

                var resultBackupPolicy = netAppMgmtClient.BackupPolicies.Get(ResourceUtils.resourceGroup, ResourceUtils.volumeBackupAccountName1, ResourceUtils.backupPolicyName1);
                Assert.Equal($"{ResourceUtils.volumeBackupAccountName1}/{ResourceUtils.backupPolicyName1}", resultBackupPolicy.Name);
                // delete the backupPolicy and check again
                netAppMgmtClient.BackupPolicies.Delete(ResourceUtils.resourceGroup, ResourceUtils.volumeBackupAccountName1, ResourceUtils.backupPolicyName1);
                if (Environment.GetEnvironmentVariable("AZURE_TEST_MODE") == "Record")
                {
                    Thread.Sleep(delay);
                }
                var backupPoliciesAfter = netAppMgmtClient.BackupPolicies.List(ResourceUtils.resourceGroup, ResourceUtils.volumeBackupAccountName1);
                Assert.Empty(backupPoliciesAfter);

                // cleanup - remove the resources
                netAppMgmtClient.BackupPolicies.Delete(ResourceUtils.resourceGroup, ResourceUtils.volumeBackupAccountName1, ResourceUtils.backupPolicyName1);
                ResourceUtils.DeleteAccount(netAppMgmtClient, accountName: ResourceUtils.volumeBackupAccountName1);
            }
        }
Exemple #4
0
        public void UpdateAccount()
        {
            HttpMockServer.RecordsDirectory = GetSessionsDirectoryPath();
            using (MockContext context = MockContext.Start(this.GetType().FullName))
            {
                var netAppMgmtClient = NetAppTestUtilities.GetNetAppManagementClient(context, new RecordedDelegatingHandler {
                    StatusCodeToReturn = HttpStatusCode.OK
                });

                // create the account
                ResourceUtils.CreateAccount(netAppMgmtClient);

                // perform create/update operation again for same account
                // this should be treated as an update and accepted
                // could equally do this with some property fields added

                var dict = new Dictionary <string, string>();
                dict.Add("Tag1", "Value1");

                var resource = ResourceUtils.CreateAccount(netAppMgmtClient, tags: dict);
                Assert.True(resource.Tags.ToString().Contains("Tag1") && resource.Tags.ToString().Contains("Value1"));
            }
        }
        public void PatchBackupPolicy()
        {
            HttpMockServer.RecordsDirectory = GetSessionsDirectoryPath();
            using (MockContext context = MockContext.Start(this.GetType()))
            {
                var netAppMgmtClient = NetAppTestUtilities.GetNetAppManagementClient(context, new RecordedDelegatingHandler {
                    StatusCodeToReturn = HttpStatusCode.OK
                });
                //Create acccount

                ResourceUtils.CreateAccount(netAppMgmtClient, location: ResourceUtils.backupLocation, accountName: ResourceUtils.volumeBackupAccountName1);
                //create the backupPolicy
                var backupPolicy       = CreateBackupPolicy(ResourceUtils.backupLocation, ResourceUtils.backupPolicyName1);
                var createBackupPolicy = netAppMgmtClient.BackupPolicies.Create(ResourceUtils.resourceGroup, ResourceUtils.volumeBackupAccountName1, ResourceUtils.backupPolicyName1, backupPolicy);

                // Now try and modify it
                var patchBackupPolicy = new BackupPolicyPatch()
                {
                    DailyBackupsToKeep = 1
                };

                var resultbackupPolicy = netAppMgmtClient.BackupPolicies.Update(ResourceUtils.resourceGroup, ResourceUtils.volumeBackupAccountName1, ResourceUtils.backupPolicyName1, patchBackupPolicy);
                Assert.NotNull(resultbackupPolicy);
                Assert.NotNull(resultbackupPolicy.DailyBackupsToKeep);
                Assert.Equal(patchBackupPolicy.DailyBackupsToKeep, resultbackupPolicy.DailyBackupsToKeep);

                if (Environment.GetEnvironmentVariable("AZURE_TEST_MODE") == "Record")
                {
                    Thread.Sleep(delay);
                }
                // cleanup
                netAppMgmtClient.BackupPolicies.Delete(ResourceUtils.resourceGroup, ResourceUtils.volumeBackupAccountName1, ResourceUtils.backupPolicyName1);
                ResourceUtils.DeletePool(netAppMgmtClient, accountName: ResourceUtils.volumeBackupAccountName1);
                ResourceUtils.DeleteAccount(netAppMgmtClient, accountName: ResourceUtils.volumeBackupAccountName1);
            }
        }
Exemple #6
0
        public void ListAccounts()
        {
            HttpMockServer.RecordsDirectory = GetSessionsDirectoryPath();
            using (MockContext context = MockContext.Start(this.GetType().FullName))
            {
                var netAppMgmtClient = NetAppTestUtilities.GetNetAppManagementClient(context, new RecordedDelegatingHandler {
                    StatusCodeToReturn = HttpStatusCode.OK
                });

                // create two accounts
                ResourceUtils.CreateAccount(netAppMgmtClient);
                ResourceUtils.CreateAccount(netAppMgmtClient, ResourceUtils.accountName2);

                // get the account list and check
                var accounts = netAppMgmtClient.Accounts.List(ResourceUtils.resourceGroup);
                Assert.Equal(accounts.ElementAt(0).Name, ResourceUtils.accountName1);
                Assert.Equal(accounts.ElementAt(1).Name, ResourceUtils.accountName2);
                Assert.Equal(2, accounts.Count());

                // clean up - delete the two accounts
                ResourceUtils.DeleteAccount(netAppMgmtClient);
                ResourceUtils.DeleteAccount(netAppMgmtClient, ResourceUtils.accountName2);
            }
        }
        public void CreateDeleteAccount()
        {
            HttpMockServer.RecordsDirectory = GetSessionsDirectoryPath();
            using (MockContext context = MockContext.Start(this.GetType().FullName))
            {
                var netAppMgmtClient = NetAppTestUtilities.GetNetAppManagementClient(context, new RecordedDelegatingHandler {
                    StatusCodeToReturn = HttpStatusCode.OK
                });

                // create the account
                ResourceUtils.CreateAccount(netAppMgmtClient);

                // get all accounts and check
                var accountsBefore = netAppMgmtClient.Accounts.List(ResourceUtils.resourceGroup);
                Assert.Single(accountsBefore);

                // remove the account and check
                netAppMgmtClient.Accounts.Delete(ResourceUtils.resourceGroup, ResourceUtils.accountName1);

                // get all accounts and check
                var accountsAfter = netAppMgmtClient.Accounts.List(ResourceUtils.resourceGroup);
                Assert.Empty(accountsAfter);
            }
        }
        public void ListAccountsBySubscription()
        {
            HttpMockServer.RecordsDirectory = GetSessionsDirectoryPath();
            using (MockContext context = MockContext.Start(this.GetType()))
            {
                var netAppMgmtClient = NetAppTestUtilities.GetNetAppManagementClient(context, new RecordedDelegatingHandler {
                    StatusCodeToReturn = HttpStatusCode.OK
                });
                var accountsBefore = netAppMgmtClient.Accounts.List(ResourceUtils.resourceGroup);
                int count          = accountsBefore.Count();
                // create two accounts
                ResourceUtils.CreateAccount(netAppMgmtClient);
                ResourceUtils.CreateAccount(netAppMgmtClient, ResourceUtils.accountName2);

                // get the account list and check
                var accounts = netAppMgmtClient.Accounts.ListBySubscription();
                Assert.Contains(accounts, item => item.Name == ResourceUtils.accountName1);
                Assert.Contains(accounts, item => item.Name == ResourceUtils.accountName2);

                // clean up - delete the two accounts
                ResourceUtils.DeleteAccount(netAppMgmtClient);
                ResourceUtils.DeleteAccount(netAppMgmtClient, ResourceUtils.accountName2);
            }
        }