public async Task ShouldCreateBlogPostFromDto() { // Always use ContentManager.NewAsync() if inside site code // When using Content Api NewAsync() or BuildNewVersion() should be called. var blogPost = await TestContentManager.ContentManager.NewAsync("BlogPost"); var blogPostItemDto = new BlogPostItemDto { DisplayText = "Foo", MarkdownBodyPart = new MarkdownBodyPartDto { Markdown = "markdown" } }; var newContainedPart = new ContainedPartDto { ListContentItemId = "blogid" }; var jContainedPart = JObject.FromObject(newContainedPart); // This should change to 'containedPart' when we resolve 'code' content types. // i.e. types that are not list and are generally welded on. blogPostItemDto.AdditionalProperties["ContainedPart"] = jContainedPart; blogPost.FromDto(blogPostItemDto); var markdown = blogPost.Content.MarkdownBodyPart.Markdown.ToString() as string; var listContentItemId = blogPost.Content.ContainedPart.ListContentItemId.ToString() as string; Assert.Equal("markdown", markdown); Assert.Equal("blogid", listContentItemId); }
public async Task ShouldAlterBlogPostFromDto() { var blogPost = await BlogPostItemHelper.CreateBlogItem(); var blogPostItemDto = blogPost.ToDto <BlogPostItemDto>(); var newContainedPart = new ContainedPartDto { ListContentItemId = "newid" }; var jContainedPart = JObject.FromObject(newContainedPart); // This should change to 'containedPart' when we resolve 'code' content types. // i.e. types that are not list and are generally welded on. // TODO camelcase this in the converter? blogPostItemDto.AdditionalProperties["ContainedPart"] = jContainedPart; blogPost.FromDto(blogPostItemDto); var newListContentItemId = blogPost.Content.ContainedPart.ListContentItemId.ToString() as string; Assert.Equal("newid", newListContentItemId); }