You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
2.1 KiB

1 year ago
  1. using Shentun.WebPeis.Asbitems;
  2. using Shentun.WebPeis.Models;
  3. using Shentun.WebPeis.Persons;
  4. using Shentun.WebPeis.QuestionRegisters;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. using Volo.Abp.Domain.Repositories;
  11. using Volo.Abp.Modularity;
  12. using Volo.Abp.Uow;
  13. using Xunit;
  14. using Xunit.Abstractions;
  15. namespace Shentun.WebPeis
  16. {
  17. public class QuestionRegisterAppServiceTest<TStartupModule> : WebPeisApplicationTestBase<TStartupModule>
  18. where TStartupModule : IAbpModule
  19. {
  20. private readonly IRepository<QuestionRegister> _repository;
  21. private readonly QuestionRegisterAppService _appService;
  22. private readonly ITestOutputHelper _output;
  23. private readonly IUnitOfWorkManager _unitOfWorkManager;
  24. public QuestionRegisterAppServiceTest(ITestOutputHelper output)
  25. {
  26. _unitOfWorkManager = GetRequiredService<IUnitOfWorkManager>();
  27. _repository = GetRequiredService<IRepository<QuestionRegister>>();
  28. _appService = GetRequiredService<QuestionRegisterAppService>();
  29. _output = output;
  30. }
  31. [Fact]
  32. public async Task GetByPersonId()
  33. {
  34. using (var unitOfWork = _unitOfWorkManager.Begin(isTransactional: true))
  35. {
  36. var entity = await _appService.GetByPersonIdAsync(new PersonIdInputDto()
  37. {
  38. PersonId = new Guid("3a12d7fa-63f1-d549-c2f8-01123e5b7a8a")
  39. });
  40. foreach (var item in entity.QuestionRegisterItems)
  41. {
  42. _output.WriteLine("-----------" + item.QuestionName);
  43. foreach (var answer in item.QuestionRegisterAnswers)
  44. {
  45. _output.WriteLine(answer.QuestionAnswerName);
  46. foreach(var childAnswer in answer.Childs)
  47. {
  48. _output.WriteLine("----"+childAnswer.QuestionAnswerName);
  49. }
  50. }
  51. }
  52. await unitOfWork.CompleteAsync();
  53. }
  54. }
  55. }
  56. }