public void GetBatchTaskParametersTest() { // Setup cmdlet without required parameters BatchAccountContext context = BatchTestHelpers.CreateBatchContextWithKeys(); cmdlet.BatchContext = context; cmdlet.JobId = null; cmdlet.Job = null; cmdlet.Filter = null; AzureOperationResponse <IPage <ProxyModels.CloudTask>, ProxyModels.TaskListHeaders> response = BatchTestHelpers.CreateGenericAzureOperationListResponse <ProxyModels.CloudTask, ProxyModels.TaskListHeaders>(); // Build a CloudTask instead of querying the service on a List CloudTask call RequestInterceptor interceptor = BatchTestHelpers.CreateFakeServiceResponseInterceptor < ProxyModels.TaskListOptions, AzureOperationResponse <IPage <ProxyModels.CloudTask>, ProxyModels.TaskListHeaders> >(response); cmdlet.AdditionalBehaviors = new List <BatchClientBehavior>() { interceptor }; Assert.Throws <ArgumentNullException>(() => cmdlet.ExecuteCmdlet()); cmdlet.JobId = "job-1"; // Verify no exceptions occur cmdlet.ExecuteCmdlet(); }
public void GetBatchTaskParametersTest() { // Setup cmdlet without required parameters BatchAccountContext context = BatchTestHelpers.CreateBatchContextWithKeys(); cmdlet.BatchContext = context; cmdlet.JobId = null; cmdlet.Job = null; cmdlet.Filter = null; // Build a CloudTask instead of querying the service on a List CloudTask call RequestInterceptor interceptor = BatchTestHelpers.CreateNoOpInterceptor <CloudTaskListParameters, CloudTaskListResponse>(); cmdlet.AdditionalBehaviors = new List <BatchClientBehavior>() { interceptor }; Assert.Throws <ArgumentNullException>(() => cmdlet.ExecuteCmdlet()); cmdlet.JobId = "job-1"; // Verify no exceptions occur cmdlet.ExecuteCmdlet(); }
public void GetBatchTaskTest() { // Setup cmdlet to get a Task by name BatchAccountContext context = BatchTestHelpers.CreateBatchContextWithKeys(); cmdlet.BatchContext = context; cmdlet.WorkItemName = "workItem"; cmdlet.JobName = "job-0000000001"; cmdlet.Name = "task1"; cmdlet.Filter = null; // Build a Task instead of querying the service on a GetJob call YieldInjectionInterceptor interceptor = new YieldInjectionInterceptor((opContext, request) => { if (request is GetTaskRequest) { GetTaskResponse response = BatchTestHelpers.CreateGetTaskResponse(cmdlet.Name); Task <object> task = Task <object> .Factory.StartNew(() => { return(response); }); return(task); } return(null); }); cmdlet.AdditionalBehaviors = new List <BatchClientBehavior>() { interceptor }; // Setup the cmdlet to write pipeline output to a list that can be examined later List <PSCloudTask> pipeline = new List <PSCloudTask>(); commandRuntimeMock.Setup(r => r.WriteObject(It.IsAny <PSCloudTask>())).Callback <object>(t => pipeline.Add((PSCloudTask)t)); cmdlet.ExecuteCmdlet(); // Verify that the cmdlet wrote the Task returned from the OM to the pipeline Assert.Equal(1, pipeline.Count); Assert.Equal(cmdlet.Name, pipeline[0].Name); }
public void GetBatchTaskParametersTest() { // Setup cmdlet without required parameters BatchAccountContext context = BatchTestHelpers.CreateBatchContextWithKeys(); cmdlet.BatchContext = context; cmdlet.JobId = null; cmdlet.Job = null; cmdlet.Filter = null; // Build a CloudTask instead of querying the service on a List CloudTask call RequestInterceptor interceptor = new RequestInterceptor((baseRequest) => { BatchRequest <CloudTaskListParameters, CloudTaskListResponse> request = (BatchRequest <CloudTaskListParameters, CloudTaskListResponse>)baseRequest; request.ServiceRequestFunc = (cancellationToken) => { CloudTaskListResponse response = BatchTestHelpers.CreateCloudTaskListResponse(new string[] { cmdlet.Id }); Task <CloudTaskListResponse> task = Task.FromResult(response); return(task); }; }); cmdlet.AdditionalBehaviors = new List <BatchClientBehavior>() { interceptor }; Assert.Throws <ArgumentNullException>(() => cmdlet.ExecuteCmdlet()); cmdlet.JobId = "job-1"; // Verify no exceptions occur cmdlet.ExecuteCmdlet(); }