CmsKit - Update tests for Content

pull/6926/head
enisn 5 years ago
parent b494f1ea32
commit 9d1d86a3b3

@ -0,0 +1,88 @@
using Microsoft.Extensions.DependencyInjection;
using NSubstitute;
using Shouldly;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;
using Volo.Abp.Users;
using Volo.CmsKit.Admin.Contents;
using Xunit;
namespace Volo.CmsKit.Contents
{
public class ContentAdminAppService_Tests : CmsKitApplicationTestBase
{
private ICurrentUser _currentUser;
private readonly CmsKitTestData _data;
private readonly IContentAdminAppService _service;
public ContentAdminAppService_Tests()
{
_data = GetRequiredService<CmsKitTestData>();
_service = GetRequiredService<IContentAdminAppService>();
}
protected override void AfterAddApplication(IServiceCollection services)
{
_currentUser = Substitute.For<ICurrentUser>();
services.AddSingleton(_currentUser);
}
[Fact]
public async Task ShouldGetListAsync()
{
var result = await _service.GetListAsync(new ContentGetListInput());
result.ShouldNotBeNull();
result.Items.ShouldNotBeEmpty();
result.Items.Count.ShouldBe(4);
}
[Fact]
public async Task ShouldGetAsync()
{
var result = await _service.GetAsync(_data.Content_1_Id);
result.ShouldNotBeNull();
}
[Fact]
public async Task ShouldCreateAsync()
{
var created = await _service.CreateAsync(new ContentCreateDto
{
EntityId = "test_case_id",
EntityType = "test_case_type",
Value = "Some long content"
});
created.ShouldNotBeNull();
}
[Fact]
public async Task ShouldUpdateAsync()
{
string newValue = "Newly created fresh value";
var updateDto = new ContentUpdateDto
{
Value = newValue
};
await _service.UpdateAsync(_data.Content_1_Id, updateDto);
var content = await _service.GetAsync(_data.Content_1_Id);
content.ShouldNotBeNull();
content.Value.ShouldBe(newValue);
}
[Fact]
public async Task ShouldDeleteAsync()
{
await _service.DeleteAsync(_data.Content_2_Id);
await Should.ThrowAsync<EntityNotFoundException>(async () => await _service.GetAsync(_data.Content_2_Id));
}
}
}

@ -1,4 +1,5 @@
using System.Linq;
using System;
using System.Linq;
using System.Threading.Tasks;
using Volo.Abp.Data;
using Volo.Abp.DependencyInjection;
@ -202,16 +203,16 @@ namespace Volo.CmsKit
private async Task SeedContentsAsync()
{
var content1 = new Content(
_guidGenerator.Create(),
_cmsKitTestData.Content_1_EntityType,
_cmsKitTestData.Content_1_Id,
_cmsKitTestData.Content_1_EntityType,
_cmsKitTestData.Content_1_EntityId,
_cmsKitTestData.Content_1
);
var content2 = new Content(
_guidGenerator.Create(),
_cmsKitTestData.Content_2_EntityType,
_cmsKitTestData.Content_2_Id,
_cmsKitTestData.Content_2_EntityType,
_cmsKitTestData.Content_2_EntityId,
_cmsKitTestData.Content_2
);
@ -225,14 +226,14 @@ namespace Volo.CmsKit
{
var tagEntity = await _tagManager.InsertAsync(_guidGenerator.Create(), _cmsKitTestData.Content_1_EntityType, tag);
await _entityTagRepository.InsertAsync(new EntityTag(tagEntity.Id, _cmsKitTestData.Content_1_Id));
await _entityTagRepository.InsertAsync(new EntityTag(tagEntity.Id, _cmsKitTestData.Content_1_EntityId));
}
foreach (var tag in _cmsKitTestData.Content_2_Tags)
{
var tagEntity = await _tagManager.InsertAsync(_guidGenerator.Create(), _cmsKitTestData.Content_2_EntityType, tag);
await _entityTagRepository.InsertAsync(new EntityTag(tagEntity.Id, _cmsKitTestData.Content_2_Id));
await _entityTagRepository.InsertAsync(new EntityTag(tagEntity.Id, _cmsKitTestData.Content_2_EntityId));
}
}

@ -21,39 +21,43 @@ namespace Volo.CmsKit
public string EntityId2 { get; } = "2";
public string Content_1_EntityType { get; } = "Lyrics";
public string Content_1 { get; } = "First things first\nI'ma say all the words inside my head\nI'm fired up and tired of the way that things have been, oh-ooh\nThe way that things have been, oh-ooh";
public string Content_1_Id { get; } = "1";
public Guid Content_1_Id { get; } = Guid.NewGuid();
public string Content_1_EntityId { get; } = "1";
public string[] Content_1_Tags => new string[] { "Imagine Dragons", "Music" };
public string[] Content_1_Tags => new string[] {"Imagine Dragons", "Music"};
public string Content_2_EntityType { get; } = "LyricsAlso";
public string Content_2 { get; } = "Second thing second\nDon't you tell me what you think that I could be\nI'm the one at the sail, I'm the master of my sea, oh-ooh\nThe master of my sea, oh-ooh";
public string Content_2_Id { get; } = "2";
public string[] Content_2_Tags => new string[] {"Imagine Dragons", "Music", "Most Loved Part"};
public Guid Content_2_Id { get; } = Guid.NewGuid();
public string Content_2_EntityId { get; } = "2";
public string[] Content_2_Tags => new string[] { "Imagine Dragons", "Music", "Most Loved Part" };
public string Page_1_Title { get; } = "Imagine Dragons - Believer Lyrics";
public string Page_1_Url { get; } = "imagine-dragons-believer-lyrics";
public string Page_1_Description { get; } = "You can get the lyrics of the music.";
public Guid Page_1_Id { get; } = Guid.NewGuid();
public string Page_1_Content => Content_1;
public string Page_2_Title { get; } = "Imagine Dragons - Believer Lyrics (Page 2)";
public string Page_2_Url { get; } = "imagine-dragons-believer-lyrics-2";
public string Page_2_Description { get; } = "You can get the lyrics of the music.";
public Guid Page_2_Id { get; } = Guid.NewGuid();
public string Page_2_Content => Content_2;
}
}

@ -47,7 +47,7 @@ namespace Volo.CmsKit.Contents
public async Task ShouldFindAsync()
{
var content =
await _contentRepository.FindAsync(_cmsKitTestData.Content_1_EntityType, _cmsKitTestData.Content_1_Id);
await _contentRepository.FindAsync(_cmsKitTestData.Content_1_EntityType, _cmsKitTestData.Content_1_EntityId);
content.ShouldNotBeNull();
}

Loading…
Cancel
Save