public void CreatePatch() { var mapper = new ApiPostServerModelMapper(); var model = new ApiPostServerRequestModel(); model.SetProperties(1, 1, "A", DateTime.Parse("1/1/1987 12:00:00 AM"), 1, DateTime.Parse("1/1/1987 12:00:00 AM"), DateTime.Parse("1/1/1987 12:00:00 AM"), 1, DateTime.Parse("1/1/1987 12:00:00 AM"), DateTime.Parse("1/1/1987 12:00:00 AM"), "A", 1, 1, 1, 1, 1, "A", "A", 1); JsonPatchDocument <ApiPostServerRequestModel> patch = mapper.CreatePatch(model); var response = new ApiPostServerRequestModel(); patch.ApplyTo(response); response.AcceptedAnswerId.Should().Be(1); response.AnswerCount.Should().Be(1); response.Body.Should().Be("A"); response.ClosedDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM")); response.CommentCount.Should().Be(1); response.CommunityOwnedDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM")); response.CreationDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM")); response.FavoriteCount.Should().Be(1); response.LastActivityDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM")); response.LastEditDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM")); response.LastEditorDisplayName.Should().Be("A"); response.LastEditorUserId.Should().Be(1); response.OwnerUserId.Should().Be(1); response.ParentId.Should().Be(1); response.PostTypeId.Should().Be(1); response.Score.Should().Be(1); response.Tag.Should().Be("A"); response.Title.Should().Be("A"); response.ViewCount.Should().Be(1); }
public void MapServerResponseToRequest() { var mapper = new ApiPostServerModelMapper(); var model = new ApiPostServerResponseModel(); model.SetProperties(1, 1, 1, "A", DateTime.Parse("1/1/1987 12:00:00 AM"), 1, DateTime.Parse("1/1/1987 12:00:00 AM"), DateTime.Parse("1/1/1987 12:00:00 AM"), 1, DateTime.Parse("1/1/1987 12:00:00 AM"), DateTime.Parse("1/1/1987 12:00:00 AM"), "A", 1, 1, 1, 1, 1, "A", "A", 1); ApiPostServerRequestModel response = mapper.MapServerResponseToRequest(model); response.Should().NotBeNull(); response.AcceptedAnswerId.Should().Be(1); response.AnswerCount.Should().Be(1); response.Body.Should().Be("A"); response.ClosedDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM")); response.CommentCount.Should().Be(1); response.CommunityOwnedDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM")); response.CreationDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM")); response.FavoriteCount.Should().Be(1); response.LastActivityDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM")); response.LastEditDate.Should().Be(DateTime.Parse("1/1/1987 12:00:00 AM")); response.LastEditorDisplayName.Should().Be("A"); response.LastEditorUserId.Should().Be(1); response.OwnerUserId.Should().Be(1); response.ParentId.Should().Be(1); response.PostTypeId.Should().Be(1); response.Score.Should().Be(1); response.Tag.Should().Be("A"); response.Title.Should().Be("A"); response.ViewCount.Should().Be(1); }
public virtual async void TestUpdate() { var builder = new WebHostBuilder() .UseEnvironment("Production") .UseStartup <TestStartup>(); TestServer testServer = new TestServer(builder); var client = new ApiClient(testServer.CreateClient()); client.SetBearerToken(JWTTestHelper.GenerateBearerToken()); var mapper = new ApiPostServerModelMapper(); ApplicationDbContext context = testServer.Host.Services.GetService(typeof(ApplicationDbContext)) as ApplicationDbContext; IPostService service = testServer.Host.Services.GetService(typeof(IPostService)) as IPostService; ApiPostServerResponseModel model = await service.Get(1); ApiPostClientRequestModel request = mapper.MapServerResponseToClientRequest(model); request.SetProperties(2, 2, "B", DateTime.Parse("1/1/1988 12:00:00 AM"), 2, DateTime.Parse("1/1/1988 12:00:00 AM"), DateTime.Parse("1/1/1988 12:00:00 AM"), 2, DateTime.Parse("1/1/1988 12:00:00 AM"), DateTime.Parse("1/1/1988 12:00:00 AM"), "B", 1, 1, 1, 1, 2, "B", "B", 2); UpdateResponse <ApiPostClientResponseModel> updateResponse = await client.PostUpdateAsync(model.Id, request); context.Entry(context.Set <Post>().ToList()[0]).Reload(); updateResponse.Record.Should().NotBeNull(); updateResponse.Success.Should().BeTrue(); updateResponse.Record.Id.Should().Be(1); context.Set <Post>().ToList()[0].AcceptedAnswerId.Should().Be(2); context.Set <Post>().ToList()[0].AnswerCount.Should().Be(2); context.Set <Post>().ToList()[0].Body.Should().Be("B"); context.Set <Post>().ToList()[0].ClosedDate.Should().Be(DateTime.Parse("1/1/1988 12:00:00 AM")); context.Set <Post>().ToList()[0].CommentCount.Should().Be(2); context.Set <Post>().ToList()[0].CommunityOwnedDate.Should().Be(DateTime.Parse("1/1/1988 12:00:00 AM")); context.Set <Post>().ToList()[0].CreationDate.Should().Be(DateTime.Parse("1/1/1988 12:00:00 AM")); context.Set <Post>().ToList()[0].FavoriteCount.Should().Be(2); context.Set <Post>().ToList()[0].LastActivityDate.Should().Be(DateTime.Parse("1/1/1988 12:00:00 AM")); context.Set <Post>().ToList()[0].LastEditDate.Should().Be(DateTime.Parse("1/1/1988 12:00:00 AM")); context.Set <Post>().ToList()[0].LastEditorDisplayName.Should().Be("B"); context.Set <Post>().ToList()[0].LastEditorUserId.Should().Be(1); context.Set <Post>().ToList()[0].OwnerUserId.Should().Be(1); context.Set <Post>().ToList()[0].ParentId.Should().Be(1); context.Set <Post>().ToList()[0].PostTypeId.Should().Be(1); context.Set <Post>().ToList()[0].Score.Should().Be(2); context.Set <Post>().ToList()[0].Tag.Should().Be("B"); context.Set <Post>().ToList()[0].Title.Should().Be("B"); context.Set <Post>().ToList()[0].ViewCount.Should().Be(2); updateResponse.Record.Id.Should().Be(1); updateResponse.Record.AcceptedAnswerId.Should().Be(2); updateResponse.Record.AnswerCount.Should().Be(2); updateResponse.Record.Body.Should().Be("B"); updateResponse.Record.ClosedDate.Should().Be(DateTime.Parse("1/1/1988 12:00:00 AM")); updateResponse.Record.CommentCount.Should().Be(2); updateResponse.Record.CommunityOwnedDate.Should().Be(DateTime.Parse("1/1/1988 12:00:00 AM")); updateResponse.Record.CreationDate.Should().Be(DateTime.Parse("1/1/1988 12:00:00 AM")); updateResponse.Record.FavoriteCount.Should().Be(2); updateResponse.Record.LastActivityDate.Should().Be(DateTime.Parse("1/1/1988 12:00:00 AM")); updateResponse.Record.LastEditDate.Should().Be(DateTime.Parse("1/1/1988 12:00:00 AM")); updateResponse.Record.LastEditorDisplayName.Should().Be("B"); updateResponse.Record.LastEditorUserId.Should().Be(1); updateResponse.Record.OwnerUserId.Should().Be(1); updateResponse.Record.ParentId.Should().Be(1); updateResponse.Record.PostTypeId.Should().Be(1); updateResponse.Record.Score.Should().Be(2); updateResponse.Record.Tag.Should().Be("B"); updateResponse.Record.Title.Should().Be("B"); updateResponse.Record.ViewCount.Should().Be(2); }