|
@@ -0,0 +1,51 @@
|
|
|
+using Hotline.Api.Controllers;
|
|
|
+using Hotline.Application.Snapshot;
|
|
|
+using Hotline.Identity.Accounts;
|
|
|
+using Hotline.Identity.Roles;
|
|
|
+using Hotline.Share.Dtos.Snapshot;
|
|
|
+using Hotline.Share.Enums.Snapshot;
|
|
|
+using Hotline.Snapshot.Interfaces;
|
|
|
+using Hotline.Users;
|
|
|
+using Microsoft.AspNetCore.Http;
|
|
|
+using Microsoft.Extensions.DependencyInjection;
|
|
|
+using Shouldly;
|
|
|
+using System;
|
|
|
+using System.Collections.Generic;
|
|
|
+using System.Linq;
|
|
|
+using System.Text;
|
|
|
+using System.Threading.Tasks;
|
|
|
+using XF.Domain.Repository;
|
|
|
+
|
|
|
+namespace Hotline.Application.Tests.Application;
|
|
|
+public class RedPackApplicationTest : TestBase
|
|
|
+{
|
|
|
+ private readonly IRedPackApplication _redPackApplication;
|
|
|
+ private readonly IRedPackRecordRepository _redPackRecordRepository;
|
|
|
+
|
|
|
+ public RedPackApplicationTest(IAccountRepository accountRepository, IRepository<Role> roleRepository, UserController userController, IServiceScopeFactory scopeFactory, IRepository<User> userRepository, IHttpContextAccessor httpContextAccessor, IThirdIdentiyService thirdIdentiyService, IThirdAccountRepository thirdAccountRepository, IRedPackApplication redPackApplication, IRedPackRecordRepository redPackRecordRepository) : base(accountRepository, roleRepository, userController, scopeFactory, userRepository, httpContextAccessor, thirdIdentiyService, thirdAccountRepository)
|
|
|
+ {
|
|
|
+ _redPackApplication = redPackApplication;
|
|
|
+ _redPackRecordRepository = redPackRecordRepository;
|
|
|
+ }
|
|
|
+
|
|
|
+ [Fact]
|
|
|
+ public async Task AuditRedPackAudit_Test()
|
|
|
+ {
|
|
|
+ var items = await _redPackApplication.GetRedPackAuditItemsAsync(new SnapshotOrderAuditItemsInDto(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,null)).ToListAsync();
|
|
|
+ var audit = items.First();
|
|
|
+ var smsTemplate = await _redPackApplication.GetRedPackAuditSMSTemplateAsync(new GetRedPackAuditSMSTemplateInDto(audit.OrderId, ERedPackAuditStatus.Agree));
|
|
|
+ var inDto = new UpdateRedPackAuditInDto
|
|
|
+ {
|
|
|
+ Status = ERedPackAuditStatus.Agree,
|
|
|
+ Opinion = "单元测试" + DateTime.Now.ToShortDateString(),
|
|
|
+ SMSTemplateId = smsTemplate.First().Id,
|
|
|
+ IsSendSms = true,
|
|
|
+ RedPackAuditId = audit.Id,
|
|
|
+ };
|
|
|
+ await _redPackApplication.AuditRedPackAuditAsync(inDto);
|
|
|
+ var record = await _redPackRecordRepository.Queryable()
|
|
|
+ .Where(m => m.OrderId == audit.OrderId)
|
|
|
+ .FirstAsync();
|
|
|
+ record.ShouldNotBeNull();
|
|
|
+ }
|
|
|
+}
|