public async Task Given_input_json_of_model_Remittances_should_be_serialize_and_desesialize_right() { // Arrange Remittance firstRemittance = null; Remittance secondRemittance = null; // Act && Assert Assert.DoesNotThrowAsync(async() => { firstRemittance = await Task.FromResult(JsonConvert.DeserializeObject <Remittance>(JsonConstants.Remittance)).ConfigureAwait(false); var remittancesJson = await Task.FromResult(JsonConvert.SerializeObject(firstRemittance)).ConfigureAwait(false); secondRemittance = await Task.FromResult(JsonConvert.DeserializeObject <Remittance>(remittancesJson)).ConfigureAwait(false); }); // Other Asserts firstRemittance.Should().BeEquivalentTo(secondRemittance); }