TourIAm/Tiam.Services.Client.Tests/SignalRClientTest.cs

92 lines
3.0 KiB
C#

using AyCode.Core.Enums;
using AyCode.Core.Helpers;
using AyCode.Core.Loggers;
using AyCode.Services.Loggers;
using AyCode.Services.SignalRs;
using Azure;
using TIAM.Core.Loggers;
using TIAM.Entities.ServiceProviders;
using TIAM.Services;
using TIAMWebApp.Shared.Application.Services;
using TIAMWebApp.Shared.Application.Utility;
namespace Tiam.Services.Client.Tests
{
[TestClass]
public class SignalRClientTest //: TestModelBase
{
private const string CompanyIdString = "3587F169-683C-4EEE-BCB5-E8D57F8C6DCE";
private readonly AdminSignalRClient _signalRClient = new(new List<IAcLogWriterClientBase> { new SignaRClientLogItemWriter(AppType.TestUnit, LogLevel.Detail, nameof(SignalRClientTest)) });
[TestInitialize]
public void TestInitialize()
{ }
[TestCleanup]
public void TearDown()
{ }
[DataTestMethod]
[DataRow(CompanyIdString)]
public async Task GetCompanyTest_ReturnCompany_WhenHasCompany(string companyIdString)
{
var companyId = Guid.Parse(companyIdString);
var company = await _signalRClient.GetByIdAsync<Company>(SignalRTags.GetCompany, companyId);
Assert.IsNotNull(company);
}
[DataTestMethod]
[DataRow(CompanyIdString)]
public async Task GetCompanyAsyncTest_ReturnCompany_WhenHasCompany(string companyIdString)
{
Company? company = null;
var companyId = Guid.Parse(companyIdString);
await _signalRClient.GetByIdAsync<Company>(SignalRTags.GetCompany, response =>
{
Assert.IsNotNull(response.ResponseData);
Assert.IsTrue(response.Status == SignalResponseStatus.Success);
company = response.ResponseData;
return Task.CompletedTask;
}, companyId);
await TaskHelper.WaitToAsync(() => company != null, 5000, 50);
Assert.IsNotNull(company);
}
[TestMethod]
public async Task GetAllCompanyTest_ReturnCompanies_WhenHasCompanies()
{
var companies = await _signalRClient.GetAllAsync<List<Company>>(SignalRTags.GetCompanies);
Assert.IsNotNull(companies);
Assert.IsTrue(companies.Count > 0);
}
[TestMethod]
public async Task GetAllCompanyAsyncTest_ReturnCompanies_WhenHasCompanies()
{
List<Company>? companies = null;
await _signalRClient.GetAllAsync<List<Company>>(SignalRTags.GetCompanies, response =>
{
Assert.IsNotNull(response.ResponseData);
Assert.IsTrue(response.Status == SignalResponseStatus.Success);
companies = response.ResponseData;
return Task.CompletedTask;
});
await TaskHelper.WaitToAsync(() => companies != null, 5000, 50);
Assert.IsNotNull(companies);
Assert.IsTrue(companies.Count > 0);
}
}
}