public void WorkItemTracking_RecycleBin_RestoreItem_Success() { // arrange WorkItems workItemsRequest = new WorkItems(_configuration); RecycleBin recyclebinRequest = new RecycleBin(_configuration); // act WorkItemPatchResponse.WorkItem createResponse = workItemsRequest.CreateWorkItem(_configuration.Project); WorkItemPatchResponse.WorkItem deleteResponse = workItemsRequest.DeleteWorkItem(createResponse.id.ToString()); GetRestoredWorkItemResponse.WorkItem restoreResponse = recyclebinRequest.RestoreItem(createResponse.id.ToString()); ////get restored item GetWorkItemExpandAllResponse.WorkItem getRestoredItemResponse = workItemsRequest.GetWorkItem(createResponse.id.ToString()); //assert Assert.AreEqual(HttpStatusCode.OK, createResponse.HttpStatusCode); Assert.AreEqual(HttpStatusCode.OK, deleteResponse.HttpStatusCode); Assert.AreEqual(HttpStatusCode.OK, restoreResponse.HttpStatusCode); Assert.AreEqual(HttpStatusCode.OK, getRestoredItemResponse.HttpStatusCode); workItemsRequest = null; recyclebinRequest = null; }
public void WorkItemTracking_RecycleBin_PermenentlyDeletedItem_Success() { // arrange WorkItems workItemsRequest = new WorkItems(_configuration); RecycleBin recyclebinRequest = new RecycleBin(_configuration); // act WorkItemPatchResponse.WorkItem createResponse = workItemsRequest.CreateWorkItem(_configuration.Project); WorkItemPatchResponse.WorkItem deleteResponse = workItemsRequest.DeleteWorkItem(createResponse.id.ToString()); HttpStatusCode permDeleteResponse = recyclebinRequest.PermenentlyDeleteItem(createResponse.id.ToString()); ////get delete item GetWorkItemExpandAllResponse.WorkItem getDeletedWorkItem = workItemsRequest.GetWorkItem(createResponse.id.ToString()); //assert Assert.AreEqual(HttpStatusCode.OK, createResponse.HttpStatusCode); Assert.AreEqual(HttpStatusCode.OK, deleteResponse.HttpStatusCode); Assert.AreEqual(HttpStatusCode.OK, permDeleteResponse); Assert.AreEqual(HttpStatusCode.NoContent, getDeletedWorkItem.HttpStatusCode); workItemsRequest = null; recyclebinRequest = null; }
// / <summary> // / get a work item by id // / </summary> // / <param name="id"></param> // / <returns>GetWorkItemExpandAllResponse.WorkItem</returns> public GetWorkItemExpandAllResponse.WorkItem GetWorkItem(string id) { GetWorkItemExpandAllResponse.WorkItem viewModel = new GetWorkItemExpandAllResponse.WorkItem(); 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); // use $expand=all to get all fields HttpResponseMessage response = client.GetAsync("_apis/wit/workitems/" + id + "?$expand=all&api-version=2.2").Result; if (response.IsSuccessStatusCode) { viewModel = response.Content.ReadAsAsync <GetWorkItemExpandAllResponse.WorkItem>().Result; } viewModel.HttpStatusCode = response.StatusCode; return(viewModel); } }