|
|
|
@ -17,16 +17,12 @@ namespace Volo.CmsKit.Blogs
|
|
|
|
|
private readonly IBlogPostRepository blogPostRepository;
|
|
|
|
|
private readonly CmsKitTestData cmsKitTestData;
|
|
|
|
|
|
|
|
|
|
public BlogPostManager_Tests(
|
|
|
|
|
IBlogPostManager blogPostManager,
|
|
|
|
|
IGuidGenerator guidGenerator,
|
|
|
|
|
IBlogPostRepository blogPostRepository,
|
|
|
|
|
CmsKitTestData cmsKitTestData)
|
|
|
|
|
public BlogPostManager_Tests()
|
|
|
|
|
{
|
|
|
|
|
this.blogPostManager = blogPostManager;
|
|
|
|
|
this.guidGenerator = guidGenerator;
|
|
|
|
|
this.blogPostRepository = blogPostRepository;
|
|
|
|
|
this.cmsKitTestData = cmsKitTestData;
|
|
|
|
|
this.blogPostManager = GetRequiredService<IBlogPostManager>();
|
|
|
|
|
this.guidGenerator = GetRequiredService<IGuidGenerator>();
|
|
|
|
|
this.blogPostRepository = GetRequiredService<IBlogPostRepository>();
|
|
|
|
|
this.cmsKitTestData = GetRequiredService<CmsKitTestData>();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Fact]
|
|
|
|
@ -36,7 +32,7 @@ namespace Volo.CmsKit.Blogs
|
|
|
|
|
var urlSlug = "new-blog-post";
|
|
|
|
|
|
|
|
|
|
var created = await blogPostManager.CreateAsync(
|
|
|
|
|
new BlogPost(guidGenerator.Create(), title, urlSlug));
|
|
|
|
|
new BlogPost(guidGenerator.Create(), cmsKitTestData.Blog_Id, title, urlSlug));
|
|
|
|
|
|
|
|
|
|
created.Id.ShouldNotBe(Guid.Empty);
|
|
|
|
|
|
|
|
|
@ -48,7 +44,7 @@ namespace Volo.CmsKit.Blogs
|
|
|
|
|
[Fact]
|
|
|
|
|
public async Task CreateAsync_ShouldThrowException_WhenUrlSlugAlreadyExists()
|
|
|
|
|
{
|
|
|
|
|
var blogPost = new BlogPost(guidGenerator.Create(), "Any New Title", cmsKitTestData.Blog_1_UrlSlug);
|
|
|
|
|
var blogPost = new BlogPost(guidGenerator.Create(), cmsKitTestData.Blog_Id, "Any New Title", cmsKitTestData.BlogPost_1_UrlSlug);
|
|
|
|
|
|
|
|
|
|
await Should.ThrowAsync<BlogPostUrlSlugAlreadyExistException>(async () =>
|
|
|
|
|
await blogPostManager.CreateAsync(blogPost));
|
|
|
|
@ -60,14 +56,14 @@ namespace Volo.CmsKit.Blogs
|
|
|
|
|
var newTitle = "Yet Another Post";
|
|
|
|
|
var newUrlSlug = "yet-another-post";
|
|
|
|
|
|
|
|
|
|
var blogPost = await blogPostRepository.GetAsync(cmsKitTestData.Blog_1_Id);
|
|
|
|
|
var blogPost = await blogPostRepository.GetAsync(cmsKitTestData.BlogPost_1_Id);
|
|
|
|
|
|
|
|
|
|
blogPost.SetTitle(newTitle);
|
|
|
|
|
blogPost.SetUrlSlug(newUrlSlug);
|
|
|
|
|
|
|
|
|
|
await blogPostManager.UpdateAsync(blogPost);
|
|
|
|
|
|
|
|
|
|
var updated = await blogPostRepository.GetAsync(cmsKitTestData.Blog_1_Id);
|
|
|
|
|
var updated = await blogPostRepository.GetAsync(cmsKitTestData.BlogPost_1_Id);
|
|
|
|
|
updated.Title.ShouldBe(newTitle);
|
|
|
|
|
updated.UrlSlug.ShouldBe(newUrlSlug);
|
|
|
|
|
}
|
|
|
|
|