InviteCodeApplicationTest.cs 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using Hotline.Api.Controllers;
  2. using Hotline.Application.Snapshot;
  3. using Hotline.Identity.Accounts;
  4. using Hotline.Identity.Roles;
  5. using Hotline.Share.Dtos.Snapshot;
  6. using Hotline.Snapshot.Interfaces;
  7. using Hotline.Users;
  8. using Microsoft.AspNetCore.Http;
  9. using Microsoft.Extensions.DependencyInjection;
  10. using Shouldly;
  11. using XF.Domain.Repository;
  12. namespace Hotline.Tests.Application;
  13. public class InviteCodeApplicationTest : TestBase
  14. {
  15. private readonly IInviteCodeApplication _inviteCodeApplication;
  16. public InviteCodeApplicationTest(IAccountRepository accountRepository, IRepository<Role> roleRepository, UserController userController, IServiceScopeFactory scopeFactory, IRepository<User> userRepository, IHttpContextAccessor httpContextAccessor, IThirdIdentiyService thirdIdentiyService, IThirdAccountRepository thirdAccountRepository, IInviteCodeApplication inviteCodeApplication) : base(accountRepository, roleRepository, userController, scopeFactory, userRepository, httpContextAccessor, thirdIdentiyService, thirdAccountRepository)
  17. {
  18. _inviteCodeApplication = inviteCodeApplication;
  19. }
  20. [Fact]
  21. public async Task InviteCode_Test()
  22. {
  23. var inDto = new AddInviteCodeInDto
  24. {
  25. OrgName = "测试部门" + DateTime.Now.ToString("ss"),
  26. BeginCode = 100,
  27. EndCode = 200,
  28. };
  29. await _inviteCodeApplication.AddInviteCodeAsync(inDto);
  30. var items = _inviteCodeApplication.GetInviteCodeItems().ToList();
  31. items.Count.ShouldNotBe(0);
  32. var statics = await _inviteCodeApplication.GetInviteCodeStatisticAsync(new GetInviteCodeStatisticInDto
  33. {
  34. StartTime = DateTime.Now.AddDays(-1),
  35. EndTime = DateTime.Now
  36. }).ToListAsync();
  37. statics.Count.ShouldNotBe(0);
  38. }
  39. }