private void UploadVhd(TemplateImage image) { UploadScriptResult response = null; Collection <PSObject> scriptResult = null; string command = null; task.SetStatus(Commands_RemoteApp.TemplateImageUploadingStatusMessage); response = CallClient_ThrowOnError(() => Client.TemplateImages.GetUploadScript()); if (response != null && response.Script != null) { string uploadFilePath = string.Concat(Environment.GetEnvironmentVariable("temp"), "\\uploadScript.ps1"); try { File.WriteAllText(uploadFilePath, response.Script); } catch (Exception ex) { task.SetState(JobState.Failed, new Exception(string.Format(Commands_RemoteApp.FailedToWriteToFileErrorFormat, uploadFilePath, ex.Message))); return; } command = String.Format("{0} -Uri \"{1}\" -Sas \"{2}\" -VhdPath \"{3}\"", uploadFilePath, image.Uri, image.Sas, Path); scriptResult = CallPowershell(command); } }
public static int SetUpDefaultRemoteAppTemplateCreate(Mock <IRemoteAppManagementClient> clientMock, string imageName, string id, string region, string vhdPath) { const int numberOfTemplatesCreated = 1; TemplateImageResult response = new TemplateImageResult() { RequestId = "1111-33444", StatusCode = System.Net.HttpStatusCode.Accepted, TemplateImage = new TemplateImage() { Name = imageName, Status = TemplateImageStatus.UploadPending, Type = TemplateImageType.PlatformImage, RegionList = new List <string>() { region } } }; mockTemplates = new List <TemplateImage>() { new TemplateImage() { Name = response.TemplateImage.Name, Status = response.TemplateImage.Status, Id = response.TemplateImage.Id, NumberOfLinkedCollections = response.TemplateImage.NumberOfLinkedCollections, Type = response.TemplateImage.Type, RegionList = response.TemplateImage.RegionList } }; OperationResultWithTrackingId responseWithTrackingId = new OperationResultWithTrackingId() { RequestId = "2222-1111-33424", StatusCode = System.Net.HttpStatusCode.OK }; UploadScriptResult responseUpload = new UploadScriptResult() { RequestId = "1111-33333-5", StatusCode = System.Net.HttpStatusCode.OK, Script = "$i = 1; foreach ($arg in $Args) { echo \"The $i parameter is $arg\"; $i++ }; return $true", // mock script just prints out arguments }; ISetup <IRemoteAppManagementClient, Task <OperationResultWithTrackingId> > SetupStorageTemplate = clientMock.Setup(c => c.TemplateImages.EnsureStorageInRegionAsync(It.IsAny <string>(), It.IsAny <CancellationToken>())); SetupStorageTemplate.Returns(Task.Factory.StartNew(() => responseWithTrackingId)); ISetup <IRemoteAppManagementClient, Task <TemplateImageResult> > SetupSetTemplate = clientMock.Setup(c => c.TemplateImages.SetAsync(It.IsAny <TemplateImageDetails>(), It.IsAny <CancellationToken>())); SetupSetTemplate.Returns(Task.Factory.StartNew(() => response)); ISetup <IRemoteAppManagementClient, Task <UploadScriptResult> > SetupUploadTemplate = clientMock.Setup(c => c.TemplateImages.GetUploadScriptAsync(It.IsAny <CancellationToken>())); SetupUploadTemplate.Returns(Task.Factory.StartNew(() => responseUpload)); return(numberOfTemplatesCreated); }
public void CanGetUploadScript() { using (UndoContext context = UndoContext.Current) { context.Start(); HttpRecorderMode mode = HttpMockServer.GetCurrentMode(); RemoteAppManagementClient remoteAppManagementClient = GetRemoteAppManagementClient(); UploadScriptResult scriptResult = remoteAppManagementClient.TemplateImages.GetUploadScript(); Assert.NotNull(scriptResult); Assert.NotNull(scriptResult.Script); } }
public static void SetUpDefaultRemoteAppUploadScriptTemplate(Mock <IRemoteAppManagementClient> clientMock) { UploadScriptResult response = new UploadScriptResult() { RequestId = "1111-33333-5", StatusCode = System.Net.HttpStatusCode.OK, Script = "Write-Output 'Mock Script'" }; mockTemplateScript = new string(response.Script.ToCharArray()); ISetup <IRemoteAppManagementClient, Task <UploadScriptResult> > SetupUploadTemplate = clientMock.Setup(c => c.TemplateImages.GetUploadScriptAsync(It.IsAny <CancellationToken>())); SetupUploadTemplate.Returns(Task.Factory.StartNew(() => response)); }