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.

98 lines
3.1 KiB

2 years ago
  1. using Shentun.Sms.SmsSends;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using Volo.Abp.Domain.Repositories;
  8. using Volo.Abp.Guids;
  9. using Volo.Abp.Uow;
  10. using Xunit.Abstractions;
  11. using Xunit;
  12. namespace Shentun.Sms.SmsSends
  13. {
  14. public class SmsSendManagerTest : SmsDomainTestBase
  15. {
  16. private readonly IRepository<SmsSend, Guid> _smsSendRepository;
  17. private readonly SmsSendManager _smsSendManager;
  18. private readonly IGuidGenerator _guidGenerator;
  19. private readonly IUnitOfWorkManager _unitOfWorkManager;
  20. private readonly ITestOutputHelper _output;
  21. public SmsSendManagerTest(
  22. ITestOutputHelper output
  23. )
  24. {
  25. _output = output;
  26. _smsSendManager = GetRequiredService<SmsSendManager>();
  27. _guidGenerator = GetRequiredService<IGuidGenerator>();
  28. _smsSendRepository = GetRequiredService<IRepository<SmsSend, Guid>>();
  29. _unitOfWorkManager = GetRequiredService<IUnitOfWorkManager>();
  30. }
  31. [Fact]
  32. public async Task CreateAsyncTest()
  33. {
  34. using (IUnitOfWork unitOfWork = _unitOfWorkManager.Begin())
  35. {
  36. var entity = new SmsSend(_guidGenerator.Create())
  37. {
  38. IsActive = 'N',
  39. IsComplete = 'N',
  40. SmsInterfaceId = "001",
  41. SmsTaskId = Guid.Parse("3a118c1d-b8d2-898a-b135-d75f50135e62"),
  42. PlanSendTime = DateTime.Now,
  43. Content = "短信内容"
  44. };
  45. entity = _smsSendManager.CreateAsync(entity);
  46. await _smsSendRepository.InsertAsync(entity);
  47. await unitOfWork.CompleteAsync();
  48. _output.WriteLine(entity.Id.ToString());
  49. }
  50. }
  51. [Fact]
  52. public async Task UpdateAsyncTest()
  53. {
  54. using (IUnitOfWork unitOfWork = _unitOfWorkManager.Begin())
  55. {
  56. var Id = Guid.Parse("3a118c1d-b8d2-898a-b135-d75f50135e62");
  57. var entity = await _smsSendRepository.GetAsync(Id);
  58. var newEntity = new SmsSend(_guidGenerator.Create())
  59. {
  60. Content = "短信内容2",
  61. SmsTaskId = entity.SmsTaskId,
  62. SmsInterfaceId = entity.SmsInterfaceId,
  63. IsComplete = entity.IsComplete,
  64. IsActive = entity.IsActive,
  65. PlanSendTime = entity.PlanSendTime
  66. };
  67. _smsSendManager.UpdateAsync(newEntity, entity);
  68. await _smsSendRepository.UpdateAsync(entity);
  69. await unitOfWork.CompleteAsync();
  70. }
  71. }
  72. [Fact]
  73. public async Task DeleteAsyncTest()
  74. {
  75. using (IUnitOfWork unitOfWork = _unitOfWorkManager.Begin())
  76. {
  77. var Id = Guid.Parse("3a118c1d-b8d2-898a-b135-d75f50135e62");
  78. await _smsSendManager.CheckIsDeleteAsync(Id);
  79. await unitOfWork.CompleteAsync();
  80. }
  81. }
  82. }
  83. }