public static void CleanUpAssembly()
        {
            vmPowershellCmdlets = new ServiceManagementCmdletTestHelper();

            var affGroup = vmPowershellCmdlets.GetAzureAffinityGroup();

            if (affGroup.Count > 0)
            {
                foreach (var aff in affGroup)
                {
                    try
                    {
                        vmPowershellCmdlets.RemoveAzureAffinityGroup(aff.Name);
                    }
                    catch (Exception e)
                    {
                        if (e.ToString().Contains(BadRequestException))
                        {
                            Console.WriteLine("Affinity Group, {0}, is not deleted.", aff.Name);
                        }
                    }
                }
            }

            if (defaultAzureSubscription != null)
            {
                Retry(String.Format("Get-AzureDisk | Where {{$_.DiskName.Contains(\"{0}\")}} | Remove-AzureDisk -DeleteVhd", serviceNamePrefix), "in use");
                if (deleteDefaultStorageAccount)
                {
                    //vmPowershellCmdlets.RemoveAzureStorageAccount(defaultAzureSubscription.CurrentStorageAccountName);
                }
            }
        }
        public static void CleanUpAssembly()
        {
            vmPowershellCmdlets = new ServiceManagementCmdletTestHelper();

            var affGroup = vmPowershellCmdlets.GetAzureAffinityGroup();
            if (affGroup.Count > 0)
            {
                foreach (var aff in affGroup)
                {
                    try
                    {
                        vmPowershellCmdlets.RemoveAzureAffinityGroup(aff.Name);
                    }
                    catch (Exception e)
                    {
                        if (e.ToString().Contains(BadRequestException))
                        {
                            Console.WriteLine("Affinity Group, {0}, is not deleted.", aff.Name);
                        }
                    }
                }
            }

            if (defaultAzureSubscription != null)
            {
                Retry(String.Format("Get-AzureDisk | Where {{$_.DiskName.Contains(\"{0}\")}} | Remove-AzureDisk -DeleteVhd", serviceNamePrefix), "in use");
                if (deleteDefaultStorageAccount)
                {
                    //vmPowershellCmdlets.RemoveAzureStorageAccount(defaultAzureSubscription.CurrentStorageAccountName);
                }
            }
        }
        public void AzureAffinityGroupTest()
        {
            StartTest(MethodBase.GetCurrentMethod().Name, testStartTime);

            string affinityName1 = Convert.ToString(TestContext.DataRow["affinityName1"]);
            string affinityLabel1 = Convert.ToString(TestContext.DataRow["affinityLabel1"]);
            string location1 = CheckLocation(Convert.ToString(TestContext.DataRow["location1"]));
            string description1 = Convert.ToString(TestContext.DataRow["description1"]);

            string affinityName2 = Convert.ToString(TestContext.DataRow["affinityName2"]);
            string affinityLabel2 = Convert.ToString(TestContext.DataRow["affinityLabel2"]);
            string location2 = CheckLocation(Convert.ToString(TestContext.DataRow["location2"]));
            string description2 = Convert.ToString(TestContext.DataRow["description2"]);

            try
            {
                ServiceManagementCmdletTestHelper vmPowershellCmdlets = new ServiceManagementCmdletTestHelper();

                // Remove previously created affinity groups
                foreach (var aff in vmPowershellCmdlets.GetAzureAffinityGroup(null))
                {
                    if (aff.Name == affinityName1 || aff.Name == affinityName2)
                    {
                        vmPowershellCmdlets.RemoveAzureAffinityGroup(aff.Name);
                    }
                }

                // New-AzureAffinityGroup
                vmPowershellCmdlets.NewAzureAffinityGroup(affinityName1, location1, affinityLabel1, description1);
                vmPowershellCmdlets.NewAzureAffinityGroup(affinityName2, location2, affinityLabel2, description2);
                Console.WriteLine("Affinity groups created: {0}, {1}", affinityName1, affinityName2);

                // Get-AzureAffinityGroup

                pass = AffinityGroupVerify(vmPowershellCmdlets.GetAzureAffinityGroup(affinityName1)[0], affinityName1, affinityLabel1, location1, description1);
                pass &= AffinityGroupVerify(vmPowershellCmdlets.GetAzureAffinityGroup(affinityName2)[0], affinityName2, affinityLabel2, location2, description2);


                // Set-AzureAffinityGroup
                vmPowershellCmdlets.SetAzureAffinityGroup(affinityName2, affinityLabel1, description1);
                Console.WriteLine("update affinity group: {0}", affinityName2);

                pass &= AffinityGroupVerify(vmPowershellCmdlets.GetAzureAffinityGroup(affinityName2)[0], affinityName2, affinityLabel1, location2, description1);


                // Remove-AzureAffinityGroup
                vmPowershellCmdlets.RemoveAzureAffinityGroup(affinityName2);
                pass &= Utilities.CheckRemove(vmPowershellCmdlets.GetAzureAffinityGroup, affinityName2);
                vmPowershellCmdlets.RemoveAzureAffinityGroup(affinityName1);
                pass &= Utilities.CheckRemove(vmPowershellCmdlets.GetAzureAffinityGroup, affinityName1);

            }
            catch (Exception e)
            {
                pass = false;
                Assert.Fail(e.ToString());
            }
        }
        public static void CleanUpAssembly()
        {
            vmPowershellCmdlets = new ServiceManagementCmdletTestHelper();

            // Cleaning up affinity groups
            var affGroup = vmPowershellCmdlets.GetAzureAffinityGroup();

            if (affGroup.Count > 0)
            {
                foreach (var aff in affGroup)
                {
                    try
                    {
                        vmPowershellCmdlets.RemoveAzureAffinityGroup(aff.Name);
                    }
                    catch (Exception e)
                    {
                        if (e.ToString().Contains(BadRequestException))
                        {
                            Console.WriteLine("Affinity Group, {0}, is not deleted.", aff.Name);
                        }
                    }
                }
            }

            if (defaultAzureSubscription != null)
            {
                // Cleaning up virtual disks
                try
                {
                    Retry(String.Format("Get-AzureDisk | Where {{$_.DiskName.Contains(\"{0}\")}} | Remove-AzureDisk", serviceNamePrefix), "in use");
                    if (deleteDefaultStorageAccount)
                    {
                        //vmPowershellCmdlets.RemoveAzureStorageAccount(defaultAzureSubscription.CurrentStorageAccountName);
                    }
                }
                catch
                {
                    Console.WriteLine("Error occurred during cleaning up disks..");
                }

                // Cleaning up vm images
                try
                {
                    vmPowershellCmdlets.RunPSScript("Get-AzureVMImage | Where {$_.Categori -eq \"User\"} | Remove-AzureVMImage");
                }
                catch
                {
                    Console.WriteLine("Error occurred during cleaning up vm images..");
                }

                // Cleaning up reserved ips
                try
                {
                    vmPowershellCmdlets.RunPSScript("Get-AzureReservedIp | Remove-AzureReservedIp -Force");
                }
                catch
                {
                    Console.WriteLine("Error occurred during cleaning up reserved ips..");
                }
            }

            if (string.IsNullOrEmpty(currentEnvName))
            {
                vmPowershellCmdlets.RunPSScript(string.Format("Remove-AzureEnvironment -Name {0} -Force", TempEnvName));
            }
        }
        public static void CleanUpAssembly()
        {
            vmPowershellCmdlets = new ServiceManagementCmdletTestHelper();

            // Cleaning up affinity groups
            var affGroup = vmPowershellCmdlets.GetAzureAffinityGroup();
            if (affGroup.Count > 0)
            {
                foreach (var aff in affGroup)
                {
                    try
                    {
                        vmPowershellCmdlets.RemoveAzureAffinityGroup(aff.Name);
                    }
                    catch (Exception e)
                    {
                        if (e.ToString().Contains(BadRequestException))
                        {
                            Console.WriteLine("Affinity Group, {0}, is not deleted.", aff.Name);
                        }
                    }
                }
            }

            if (defaultAzureSubscription != null)
            {
                // Cleaning up virtual disks
                try
                {
                    Retry(String.Format("Get-AzureDisk | Where {{$_.DiskName.Contains(\"{0}\")}} | Remove-AzureDisk", serviceNamePrefix), "in use");
                    if (deleteDefaultStorageAccount)
                    {
                        //vmPowershellCmdlets.RemoveAzureStorageAccount(defaultAzureSubscription.CurrentStorageAccountName);
                    }
                }
                catch
                {
                    Console.WriteLine("Error occurred during cleaning up disks..");
                }

                // Cleaning up vm images
                try
                {
                    vmPowershellCmdlets.RunPSScript("Get-AzureVMImage | Where {$_.Categori -eq \"User\"} | Remove-AzureVMImage");
                }
                catch
                {
                    Console.WriteLine("Error occurred during cleaning up vm images..");
                }

                // Cleaning up reserved ips
                try
                {
                    vmPowershellCmdlets.RunPSScript("Get-AzureReservedIp | Remove-AzureReservedIp -Force");
                }
                catch
                {
                    Console.WriteLine("Error occurred during cleaning up reserved ips..");
                }
            }

            if (string.IsNullOrEmpty(currentEnvName))
            {
                vmPowershellCmdlets.RunPSScript(string.Format("Remove-AzureEnvironment -Name {0} -Force", TempEnvName));
            }
        }