From 95be9f58b7cf76f1c585791447e8393d61862e1c Mon Sep 17 00:00:00 2001 From: crupest Date: Tue, 10 Mar 2020 19:37:58 +0800 Subject: ... --- .../IntegratedTests/IntegratedTestBase.cs | 29 ++++++++++++++-------- 1 file changed, 18 insertions(+), 11 deletions(-) (limited to 'Timeline.Tests/IntegratedTests/IntegratedTestBase.cs') diff --git a/Timeline.Tests/IntegratedTests/IntegratedTestBase.cs b/Timeline.Tests/IntegratedTests/IntegratedTestBase.cs index dfde2ea5..66904629 100644 --- a/Timeline.Tests/IntegratedTests/IntegratedTestBase.cs +++ b/Timeline.Tests/IntegratedTests/IntegratedTestBase.cs @@ -1,10 +1,13 @@ -using AutoMapper; -using Microsoft.AspNetCore.Mvc.Testing; +using Microsoft.AspNetCore.Mvc.Testing; using Microsoft.Extensions.DependencyInjection; using System; using System.Collections.Generic; using System.Net.Http; +using System.Text.Json; +using System.Text.Json.Serialization; using System.Threading.Tasks; +using Timeline.Models; +using Timeline.Models.Converters; using Timeline.Models.Http; using Timeline.Services; using Timeline.Tests.Helpers; @@ -14,12 +17,6 @@ namespace Timeline.Tests.IntegratedTests { public abstract class IntegratedTestBase : IClassFixture>, IDisposable { - static IntegratedTestBase() - { - FluentAssertions.AssertionOptions.AssertEquivalencyUsing(options => - options.Excluding(m => m.RuntimeType == typeof(UserInfoLinks))); - } - protected TestApplication TestApp { get; } protected WebApplicationFactory Factory => TestApp.Factory; @@ -63,12 +60,22 @@ namespace Timeline.Tests.IntegratedTests var userInfoList = new List(); var userService = scope.ServiceProvider.GetRequiredService(); - var mapper = scope.ServiceProvider.GetRequiredService(); - foreach (var user in users) { userService.CreateUser(user).Wait(); - userInfoList.Add(mapper.Map(user)); + } + + using var client = CreateDefaultClient().Result; + var options = new JsonSerializerOptions + { + PropertyNamingPolicy = JsonNamingPolicy.CamelCase + }; + options.Converters.Add(new JsonStringEnumConverter()); + options.Converters.Add(new JsonDateTimeConverter()); + foreach (var user in users) + { + var s = client.GetStringAsync($"/users/{user.Username}").Result; + userInfoList.Add(JsonSerializer.Deserialize(s, options)); } UserInfos = userInfoList; -- cgit v1.2.3