// / <summary> // / Get list work items but only specific fields // / </summary> // / <param name="ids"></param> // / <returns>ListofWorkItemsResponse.WorkItems</returns> public ListofWorkItemsResponse.WorkItems GetListOfWorkItems_ByIDsWithSpecificFields(string ids) { ListofWorkItemsResponse.WorkItems viewModel = new ListofWorkItemsResponse.WorkItems(); // list of fields that i care about string fields = "System.Id,System.Title,System.WorkItemType,Microsoft.VSTS.Scheduling.RemainingWork"; using (var client = new HttpClient()) { client.BaseAddress = new Uri(_configuration.UriString); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", _credentials); HttpResponseMessage response = client.GetAsync("_apis/wit/workitems?ids=" + ids + "&fields=" + fields + "&api-version=2.2").Result; if (response.IsSuccessStatusCode) { viewModel = response.Content.ReadAsAsync <ListofWorkItemsResponse.WorkItems>().Result; } viewModel.HttpStatusCode = response.StatusCode; return(viewModel); } }
public void WorkItemTracking_WorkItems_GetListOfWorkItemsByIDs_WithSpecificFields_Success() { // arrange WorkItems request = new WorkItems(_configuration); // act ListofWorkItemsResponse.WorkItems response = request.GetListOfWorkItems_ByIDsWithSpecificFields("2247, 2473"); // assert Assert.AreEqual(HttpStatusCode.OK, response.HttpStatusCode); request = null; }
public void WorkItemTracking_WorkItems_GetListOfWorkItemsByIDs_Success() { // arrange WorkItems request = new WorkItems(_configuration); // act ListofWorkItemsResponse.WorkItems response = request.GetListOfWorkItems_ByIDs(_configuration.WorkItemIds); // assert if (response.HttpStatusCode == HttpStatusCode.NotFound) { Assert.Inconclusive("work items '" + _configuration.WorkItemIds + "' not found"); } else { Assert.AreEqual(HttpStatusCode.OK, response.HttpStatusCode); } request = null; }