public async Task CanCreateCustomer() { var customer = new Models.CustomerForCreationDto { EmailAddress = "*****@*****.**", FirstName = "Bill", LastName = "Gates", Password = "******" }; var customerToString = JsonConvert.SerializeObject(customer); // The endpoint or route of the controller action. var httpResponse = await _client.PostAsync( "/api/customers", new StringContent( customerToString, Encoding.UTF8, "application/json") ); // Must be successful. httpResponse.EnsureSuccessStatusCode(); var stringResponse = await httpResponse.Content.ReadAsStringAsync(); var createdCustomer = JsonConvert.DeserializeObject <Models.CustomerDto>(stringResponse); Assert.True(httpResponse.Headers.Contains("Location")); Assert.Equal(customer.EmailAddress, createdCustomer.EmailAddress); }
public async Task CanUpdateCustomer() { var customer = new Models.CustomerForCreationDto { EmailAddress = "*****@*****.**", FirstName = "Jamie", LastName = "Oliver", Password = "******" }; var customerToString = JsonConvert.SerializeObject(customer); var httpResponse = await _client.PutAsync( "/api/customers/A56F5F93-3D50-49DD-BBF7-AF7BE44FA66C", new StringContent( customerToString, Encoding.UTF8, "application/json")); // Must be successful. httpResponse.EnsureSuccessStatusCode(); }