CmsKit - Update Tests for BlogPosts

pull/7596/head
enisn 5 years ago
parent 5121670195
commit 763e9af376

@ -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);
}

@ -3,6 +3,7 @@ using System.Linq;
using System.Threading.Tasks;
using Volo.Abp.Data;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Domain.Repositories;
using Volo.Abp.Guids;
using Volo.Abp.MultiTenancy;
using Volo.Abp.Users;
@ -277,9 +278,9 @@ namespace Volo.CmsKit
{
var blog = await _blogRepository.InsertAsync(new Blog(_cmsKitTestData.BlogName));
await _blogPostRepository.InsertAsync(new BlogPost(blog.Id, _cmsKitTestData.Blog_1_Title, _cmsKitTestData.Blog_1_UrlSlug, "Short desc 1"));
await _blogPostRepository.InsertAsync(new BlogPost(_cmsKitTestData.BlogPost_1_Id, blog.Id, _cmsKitTestData.BlogPost_1_Title, _cmsKitTestData.BlogPost_1_UrlSlug, "Short desc 1"));
await _blogPostRepository.InsertAsync(new BlogPost(blog.Id, _cmsKitTestData.Blog_2_Title, _cmsKitTestData.Blog_2_UrlSlug, "Short desc 2"));
await _blogPostRepository.InsertAsync(new BlogPost(_cmsKitTestData.BlogPost_2_Id, blog.Id, _cmsKitTestData.BlogPost_2_Title, _cmsKitTestData.BlogPost_2_UrlSlug, "Short desc 2"));
}
}
}

@ -0,0 +1,53 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Claims;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Users;
namespace Volo.CmsKit
{
public class CmsKitFakeCurrentUser : ITransientDependency, ICurrentUser
{
private readonly CmsKitTestData cmsKitTestData;
public CmsKitFakeCurrentUser(CmsKitTestData cmsKitTestData)
{
this.cmsKitTestData = cmsKitTestData;
}
public bool IsAuthenticated { get; }
public Guid? Id => cmsKitTestData.User1Id;
public string UserName => cmsKitTestData.User1UserName;
public string Name { get; }
public string SurName { get; }
public string PhoneNumber { get; }
public bool PhoneNumberVerified { get; }
public string Email { get; }
public bool EmailVerified { get; }
public Guid? TenantId { get; }
public string[] Roles { get; }
public Claim FindClaim(string claimType)
{
throw new NotImplementedException();
}
public Claim[] FindClaims(string claimType)
{
throw new NotImplementedException();
}
public Claim[] GetAllClaims()
{
throw new NotImplementedException();
}
public bool IsInRole(string roleName)
{
throw new NotImplementedException();
}
}
}

@ -53,7 +53,7 @@ namespace Volo.CmsKit
{
using (var scope = context.ServiceProvider.CreateScope())
{
await scope.ServiceProvider
await scope.ServiceProvider
.GetRequiredService<IDataSeeder>()
.SeedAsync();
}

@ -7,6 +7,7 @@ namespace Volo.CmsKit
public class CmsKitTestData : ISingletonDependency
{
public Guid User1Id { get; } = Guid.NewGuid();
public string User1UserName => "fake.user";
public Guid User2Id { get; } = Guid.NewGuid();
@ -60,18 +61,20 @@ namespace Volo.CmsKit
public string Page_2_Content => Content_2;
public Guid Blog_Id { get; } = Guid.NewGuid();
public string BlogName => "Cms Blog";
public Guid Blog_1_Id { get; } = Guid.NewGuid();
public Guid BlogPost_1_Id { get; } = Guid.NewGuid();
public string Blog_1_Title => "How to install CmsKit?";
public string BlogPost_1_Title => "How to install CmsKit?";
public string Blog_1_UrlSlug => "how-to-install-cms-kit";
public string BlogPost_1_UrlSlug => "how-to-install-cms-kit";
public Guid Blog_2_Id { get; } = Guid.NewGuid();
public Guid BlogPost_2_Id { get; } = Guid.NewGuid();
public string Blog_2_Title => "How to use CmsKit?";
public string BlogPost_2_Title => "How to use CmsKit?";
public string Blog_2_UrlSlug => "how-to-use-cms-kit?";
public string BlogPost_2_UrlSlug => "how-to-use-cms-kit?";
}
}

Loading…
Cancel
Save