private void ValidateLogin(string dns, int port, string vmAccessUserName, string vmAccessPassword) { Assert.IsTrue((Utilities.RDPtestIaaS(dns, port, vmAccessUserName, vmAccessPassword, true)), "Cannot RDP to the instance!!"); }
public void PatchNormalSasUriBase() { StartTest(MethodBase.GetCurrentMethod().Name, testStartTime); // Choose the base vhd file from local machine var baseVhdName = Convert.ToString(TestContext.DataRow["baseImage"]); var baseVhdLocalPath = new FileInfo(Directory.GetCurrentDirectory() + "\\" + baseVhdName); Assert.IsTrue(File.Exists(baseVhdLocalPath.FullName), "VHD file not exist={0}", baseVhdLocalPath); // Get the pre-calculated MD5 hash of the fixed vhd that was converted from the original vhd. string md5hash = Convert.ToString(TestContext.DataRow["MD5hash"]); string md5hashBase = Convert.ToString(TestContext.DataRow["MD5hashBase"]); // Choose the child vhd file from the local machine var childVhdName = Convert.ToString(TestContext.DataRow["vhdName"]); var childVhdLocalPath = new FileInfo(Directory.GetCurrentDirectory() + "\\" + childVhdName); Assert.IsTrue(File.Exists(childVhdLocalPath.FullName), "VHD file not exist={0}", childVhdLocalPath); int i = 0; while (i < 16) { string destinationSasUriParent = CreateSasUriWithPermission(baseVhdName, i); // the destination of the parent vhd is a Sas Uri // Set the destination of child vhd string vhdBlobName = string.Format("{0}/{1}.vhd", vhdContainerName, Utilities.GetUniqueShortName(Path.GetFileNameWithoutExtension(childVhdName))); string vhdDestUri = blobUrlRoot + vhdBlobName; try { // Upload the parent vhd using Sas Uri Console.WriteLine("uploads {0} to {1}", baseVhdName, destinationSasUriParent); vmPowershellCmdlets.RemoveAzureSubscriptions(); var vhdUploadContext = vmPowershellCmdlets.AddAzureVhd(baseVhdLocalPath, destinationSasUriParent, true); Console.WriteLine("uploading completed: {0}", baseVhdName); // Verify the upload. ReImportSubscription(); AssertUploadContextAndContentMD5UsingSaveVhd(destinationSasUriParent, baseVhdLocalPath, vhdUploadContext, md5hashBase, false); Console.WriteLine("uploads {0} to {1} with patching from {2}", childVhdName, vhdDestUri, destinationSasUriParent); var patchVhdUploadContext = vmPowershellCmdlets.AddAzureVhd(childVhdLocalPath, vhdDestUri, destinationSasUriParent); Console.WriteLine("uploading the child vhd completed: {0}", childVhdName); // Verify the upload. AssertUploadContextAndContentMD5UsingSaveVhd(vhdDestUri, childVhdLocalPath, patchVhdUploadContext, md5hash); Console.WriteLine("Test success with permission: {0}", i); i++; } catch (Exception e) { if (i != 3 && i != 7 && i != 11 && i != 15) { Console.WriteLine("Error as expected. Permission: {0}", i); Console.WriteLine("Error message: {0}", e.InnerException.Message); i++; continue; } else { Assert.Fail("Test failed Permission: {0} \n {1}", i, e.ToString()); } } } pass = true; DateTime testEndTime = DateTime.Now; Console.WriteLine("{0} test passed at {1}.", testName, testEndTime); Console.WriteLine("Duration of the test pass: {0} seconds", (testEndTime - testStartTime).TotalSeconds); System.IO.File.AppendAllLines(perfFile, new string[] { String.Format("{0},{1}", testName, (testEndTime - testStartTime).TotalSeconds) }); }
public void AzureServiceExtensionTest() { StartTest(MethodBase.GetCurrentMethod().Name, testStartTime); const string rdpPath = @".\WebRole2.rdp"; try { Collection <ExtensionImageContext> resultExtensions = vmPowershellCmdlets.GetAzureServiceAvailableExtension(); foreach (var extension in resultExtensions) { if (extension.ExtensionName == "RDP") { _extensionName = extension.ExtensionName; _providerNamespace = extension.ProviderNameSpace; _version = extension.Version; break; } } vmPowershellCmdlets.NewAzureService(_serviceName, _serviceName, locationName); Console.WriteLine("service, {0}, is created.", _serviceName); vmPowershellCmdlets.NewAzureDeployment(_serviceName, _packagePath.FullName, _configPath.FullName, DeploymentSlotType.Production, DeploymentLabel, DeploymentName, false, false); DeploymentInfoContext result = vmPowershellCmdlets.GetAzureDeployment(_serviceName, DeploymentSlotType.Production); pass = Utilities.PrintAndCompareDeployment(result, _serviceName, DeploymentName, DeploymentLabel, DeploymentSlotType.Production, null, 2); Console.WriteLine("successfully deployed the package"); vmPowershellCmdlets.SetAzureServiceExtension( serviceName: _serviceName, extensionName: _extensionName, providerNamespace: _providerNamespace, publicConfig: PublicConfig, privateConfig: PrivateConfig, version: _version ); ExtensionContext resultExtensionContext = vmPowershellCmdlets.GetAzureServiceExtension(_serviceName)[0]; Utilities.PrintContext(resultExtensionContext); VerifyExtensionContext(resultExtensionContext, "AllRoles", _extensionName, _providerNamespace, _version); RemoteDesktopExtensionContext resultContext = vmPowershellCmdlets.GetAzureServiceRemoteDesktopExtension(_serviceName)[0]; Utilities.PrintContext(resultContext); VerifyRDP(_serviceName, rdpPath); vmPowershellCmdlets.RemoveAzureServiceExtension( serviceName: _serviceName, extensionName: _extensionName, providerNamespace: _providerNamespace, uninstall: true); try { vmPowershellCmdlets.GetAzureRemoteDesktopFile("WebRole1_IN_0", _serviceName, rdpPath, false); Assert.Fail("Succeeded, but extected to fail!"); } catch (Exception e) { if (e is AssertFailedException) { throw; } Console.WriteLine("Failed to get RDP file as expected"); } vmPowershellCmdlets.RemoveAzureDeployment(_serviceName, DeploymentSlotType.Production, true); pass &= Utilities.CheckRemove(vmPowershellCmdlets.GetAzureDeployment, _serviceName, DeploymentSlotType.Production); } catch (Exception e) { Console.WriteLine("Exception occurred: {0}", e); throw; } }