using Microsoft.EntityFrameworkCore; using Shentun.Peis.GuideTypes; using Shentun.Peis.Models; using Shouldly; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Volo.Abp.Application.Dtos; using Volo.Abp.Domain.Repositories; using Volo.Abp.Uow; using Xunit; using Xunit.Abstractions; namespace Shentun.Peis { public class GuideTypeAppServiceTest: PeisApplicationTestBase { private readonly IRepository _repository; private readonly GuideTypeAppService _guideTypeAppService; private readonly ITestOutputHelper _output; private readonly IUnitOfWorkManager _unitOfWorkManager; public GuideTypeAppServiceTest(ITestOutputHelper testOutputHelper) { _output = testOutputHelper; _unitOfWorkManager = GetRequiredService(); _repository = GetRequiredService>(); _guideTypeAppService = GetRequiredService(); } [Fact] public async Task GetQueryListAsync() { using (var uow = _unitOfWorkManager.Begin()) { IQueryable queryable = await _repository.GetQueryableAsync(); var itemTypes = (from item in queryable select item).ToList(); foreach (var item in itemTypes) { _output.WriteLine(item.DisplayName); } await uow.CompleteAsync(); } } [Fact] public async Task GetListAsync() { PagedAndSortedResultRequestDto qc = new PagedAndSortedResultRequestDto() { Sorting = "displayorder" }; var result = await _guideTypeAppService.GetListAsync(qc); _output.WriteLine(result.TotalCount.ToString()); foreach (var item in result.Items) { Console.WriteLine(item.DisplayName); _output.WriteLine(item.DisplayName); } } [Fact] public async Task GetList() { PagedAndSortedResultRequestDto qc = new PagedAndSortedResultRequestDto() { Sorting = "displayorder"}; var result = await _guideTypeAppService.GetListAsync(qc); result.TotalCount.ShouldBeGreaterThanOrEqualTo(4); Console.WriteLine(result.TotalCount); _output.WriteLine(result.TotalCount.ToString()); foreach (var item in result.Items) { Console.WriteLine(item.DisplayName); _output.WriteLine(item.DisplayName); } } [Fact] public async Task Create() { var result = await _guideTypeAppService.CreateAsync(new CreateGuideTypeDto() { DisplayName = "Foo", }); _output.WriteLine(result.Id.ToString()); } [Fact] public async Task DeleteAsync() { try { using (var uow = _unitOfWorkManager.Begin()) { await _guideTypeAppService.DeleteAsync(new Guid("3a0d6c49-cecf-19d9-0f4b-0923a28a3889")); _output.WriteLine("删除成功"); } } catch (Exception ex) { _output.WriteLine(ex.Message); } } } }