public async Task taxaccountnumber_add_update_delete() { var httpclient = fixture.Client;; if (String.IsNullOrEmpty(TokenTest.TokenValue)) { await TokenTest.token_get(httpclient); } // TaxAccountNumberViewModel taxaccountnumber = new TaxAccountNumberViewModel { //MANUAL UPDATES REQUIRED! TestText = "tt updated" }; httpclient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", TokenTest.TokenValue); var response = await httpclient.PostAsync("/api/taxaccountnumber", new StringContent( JsonConvert.SerializeObject(taxaccountnumber), Encoding.UTF8, "application/json")); response.EnsureSuccessStatusCode(); Assert.Equal(HttpStatusCode.Created, response.StatusCode); var lastAddedId = await response.Content.ReadAsStringAsync(); Assert.True(int.Parse(lastAddedId) > 1); int id = 0; int.TryParse(lastAddedId, out id); //get inserted var util = new UtilityExt(); var vmentity = await util.GetTaxAccountNumber(httpclient, id); //update test vmentity.TestText = "tt updated"; response = await httpclient.PutAsync("/api/taxaccountnumber/" + id.ToString(), new StringContent(JsonConvert.SerializeObject(vmentity), Encoding.UTF8, "application/json")); response.EnsureSuccessStatusCode(); Assert.Equal(HttpStatusCode.Accepted, response.StatusCode); //confirm update response = await httpclient.GetAsync("/api/taxaccountnumber/" + id.ToString()); response.EnsureSuccessStatusCode(); var jsonString = await response.Content.ReadAsStringAsync(); var oj = JObject.Parse(jsonString); var tt = oj["testText"].ToString(); Assert.Equal(tt, vmentity.TestText); //another update with same account - concurrency vmentity.TestText = "tt updated 2"; response = await httpclient.PutAsync("/api/taxaccountnumber/" + id.ToString(), new StringContent(JsonConvert.SerializeObject(vmentity), Encoding.UTF8, "application/json")); Assert.Equal(HttpStatusCode.PreconditionFailed, response.StatusCode); //delete test response = await httpclient.DeleteAsync("/api/taxaccountnumber/" + id.ToString()); response.EnsureSuccessStatusCode(); Assert.Equal(HttpStatusCode.NoContent, response.StatusCode); }
public async Task <IActionResult> Create([FromBody] TaxAccountNumberViewModel taxaccountnumber) { if (taxaccountnumber == null) { return(BadRequest()); } var id = await _taxaccountnumberServiceAsync.Add(taxaccountnumber); return(Created($"api/TaxAccountNumber/{id}", id)); //HTTP201 Resource created }
public async Task <int> addTaxAccountNumber(HttpClient client) { TaxAccountNumberViewModel vmentity = new TaxAccountNumberViewModel { //MANUAL UPDATES REQUIRED! //initiate viewmodel object TestText = "tt updated" }; client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", TokenTest.TokenValue); var response = await client.PostAsync("/api/taxaccountnumber", new StringContent( JsonConvert.SerializeObject(vmentity), Encoding.UTF8, "application/json")); var jsonString = await response.Content.ReadAsStringAsync(); int lastAdded = 0; int.TryParse(jsonString, out lastAdded); return(lastAdded); }
public async Task <IActionResult> Update(int id, [FromBody] TaxAccountNumberViewModel taxaccountnumber) { if (taxaccountnumber == null || taxaccountnumber.Id != id) { return(BadRequest()); } var retVal = await _taxaccountnumberServiceAsync.Update(taxaccountnumber); if (retVal == 0) { return(StatusCode(304)); //Not Modified } else if (retVal == -1) { return(StatusCode(412, "DbUpdateConcurrencyException")); //412 Precondition Failed - concurrency } else { return(Accepted(taxaccountnumber)); } }