public async Task Put_EndpointReturnSuccessAndCorrectMessage() { var stringContent = new StringContent(JsonConvert.SerializeObject(testMessage), Encoding.UTF8, "application/json"); var createResponse = await _client.PostAsync("/api/messages", stringContent); var createBody = await createResponse.Content.ReadAsStringAsync(); var createdMessage = JsonConvert.DeserializeObject <Hub.API.ViewModels.MessageViewModel>(createBody); var id = createdMessage.Id; var newTestMessage = MessagesTestData.CreateMessage("new title", "new description", 10, true, false); newTestMessage.Id = Guid.Empty; var content = new StringContent(JsonConvert.SerializeObject(newTestMessage), Encoding.UTF8, "application/json"); var response = await _client.PutAsync($"/api/messages/{id}", content); response.EnsureSuccessStatusCode(); var body = await response.Content.ReadAsStringAsync(); var messageResult = JsonConvert.DeserializeObject <Hub.API.ViewModels.MessageViewModel>(body); messageResult.Title.Should().Be(newTestMessage.Title); messageResult.Description.Should().Be(newTestMessage.Description); messageResult.SortOrder.Should().Be(newTestMessage.SortOrder); messageResult.Id.Should().Be(id); }
public async Task List_EndpointReturnSuccessAndCorrectMessages() { for (var i = 0; i < 5; i++) { var newMessage = MessagesTestData.CreateMessage("Test message title", "Test message description", 0); var stringContent = new StringContent(JsonConvert.SerializeObject(newMessage), Encoding.UTF8, "application/json"); var createResponse = await _client.PostAsync("/api/messages", stringContent); createResponse.EnsureSuccessStatusCode(); } var response = await _client.GetAsync("/api/messages"); response.EnsureSuccessStatusCode(); var body = await response.Content.ReadAsStringAsync(); var deserializedBody = JsonConvert.DeserializeObject <Hub.API.ViewModels.MessageViewModel[]>(body); Assert.NotEmpty(deserializedBody); deserializedBody.Should().HaveCountGreaterOrEqualTo(5); }