Adding
This commit is contained in:
+4
-4
@@ -1,4 +1,4 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
@@ -9,11 +9,11 @@
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="FluentAssertions" Version="6.8.0" />
|
||||
<PackageReference Include="LCU.Api.Internal.FTPLib" Version="2.11.2" />
|
||||
<PackageReference Include="LCU.Library.Internal.CoreApiWrapperModel" Version="2.27.14" />
|
||||
<PackageReference Include="LCU.Library.Internal.LcuClassPatterns.CrudTests" Version="1.0.1" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="7.0.5" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.5.0" />
|
||||
<PackageReference Include="Moq" Version="4.18.3" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.13.0" />
|
||||
<PackageReference Include="Moq" Version="4.18.4" />
|
||||
<PackageReference Include="NUnit" Version="3.12.0" />
|
||||
<PackageReference Include="NUnit3TestAdapter" Version="4.0.0" />
|
||||
</ItemGroup>
|
||||
|
||||
+14
-109
@@ -1,130 +1,35 @@
|
||||
using LCU.API.Internal.MemberPreferencesApi.Interfaces;
|
||||
using LCU.API.Internal.MemberPreferencesApi.MicroApiServices;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Services.DnaAuditServices;
|
||||
using LCU.API.Internal.MemberPreferencesApiLib.Repositories;
|
||||
using LCU.Library.Internal.LCUServiceFactory.Services;
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using System.Linq;
|
||||
using LCU.Library.Internal.MemberPreferencesApiModels.Entities;
|
||||
using LCU.Library.Internal.MemberPreferencesApiModels.Enums;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Services.QueueServices;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Interfaces;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Configuration;
|
||||
using LCU.API.Internal.MemberPreferencesApiLib.Repositories;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Services.DnaAuditServices;
|
||||
using LCU.API.Internal.MemberPreferencesApi.MicroApiServices;
|
||||
|
||||
namespace LCU.API.Internal.MemberPreferencesApi.UnitTests.Services
|
||||
{
|
||||
public class DNADataAuditProcessServiceTest
|
||||
{
|
||||
private Mock<ICoreApiWrapperService> _coreApiWrapperServiceMock;
|
||||
private Mock<IQueueDnaAccountAuditService> _queueAccountMock;
|
||||
private Mock<IQueueDnaAgreementAuditService> _queueAgreementMock;
|
||||
private Mock<IQueueDnaOrganizationAuditService> _queueOrganizationMock;
|
||||
private Mock<IScanBiCoreApiWrapperService> _scanBiCoreApiWrapperServiceMock;
|
||||
private Mock<IDnaAuditProcessRepository> _dnaAuditProcessRepositoryMock;
|
||||
private DNADataAuditProcessService _service;
|
||||
private Mock<IDateTime> _dateTimeMock;
|
||||
private DnaAuditProcessConfiguration _config;
|
||||
private Mock<ILcuServiceFactory<IDNAAuditCheckService>> _serviceFactoryMock;
|
||||
|
||||
[SetUp]
|
||||
public void Setup()
|
||||
{
|
||||
_dateTimeMock = new Mock<IDateTime>();
|
||||
_config = new DnaAuditProcessConfiguration();
|
||||
_coreApiWrapperServiceMock = new Mock<ICoreApiWrapperService>();
|
||||
_queueAccountMock = new Mock<IQueueDnaAccountAuditService>();
|
||||
_queueAgreementMock = new Mock<IQueueDnaAgreementAuditService>();
|
||||
_queueOrganizationMock = new Mock<IQueueDnaOrganizationAuditService>();
|
||||
_scanBiCoreApiWrapperServiceMock = new Mock<IScanBiCoreApiWrapperService>();
|
||||
_dnaAuditProcessRepositoryMock = new Mock<IDnaAuditProcessRepository>();
|
||||
_service = new DNADataAuditProcessService(_queueAccountMock.Object, _queueAgreementMock.Object, _queueOrganizationMock.Object,
|
||||
_coreApiWrapperServiceMock.Object, _dateTimeMock.Object, _dnaAuditProcessRepositoryMock.Object, _config);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task RunDnaAuditProcessesChange_HandleProcessUpdate_Ok()
|
||||
{
|
||||
|
||||
var processlistAccount = new List<DnaAuditProcess>
|
||||
{
|
||||
new DnaAuditProcess()
|
||||
{
|
||||
ConsecutiveFailures = 0,
|
||||
DnaProcessType = DnaAuditProcessType.DNAAccounts,
|
||||
LastUpdated = DateTime.Now,
|
||||
ProcessId = 0,
|
||||
}
|
||||
};
|
||||
|
||||
var processlistAgreement = new List<DnaAuditProcess>
|
||||
{
|
||||
new DnaAuditProcess()
|
||||
{
|
||||
ConsecutiveFailures = 0,
|
||||
DnaProcessType = DnaAuditProcessType.DNAAgreement,
|
||||
LastUpdated = DateTime.Now,
|
||||
ProcessId = 0,
|
||||
}
|
||||
};
|
||||
|
||||
var processlistOrg = new List<DnaAuditProcess>
|
||||
{
|
||||
new DnaAuditProcess()
|
||||
{
|
||||
ConsecutiveFailures = 0,
|
||||
DnaProcessType = DnaAuditProcessType.DNAOrganization,
|
||||
LastUpdated = DateTime.Now,
|
||||
ProcessId = 0,
|
||||
}
|
||||
};
|
||||
|
||||
await _service.RunDataAuditProcesses();
|
||||
await _service.AuditDNAAccountsForTimePeriod(DateTime.Now, processlistAccount.First());
|
||||
var resultAccount = _service.HandleDnaAuditProcessSuccess(processlistAccount.First());
|
||||
|
||||
await _service.AuditDNAAgreementForTimePeriod(DateTime.Now, processlistAgreement.First());
|
||||
var resultAgreement = _service.HandleDnaAuditProcessSuccess(processlistAgreement.First());
|
||||
|
||||
await _service.AuditDNAOrganizationForTimePeriod(DateTime.Now, processlistOrg.First());
|
||||
var resultOrg = _service.HandleDnaAuditProcessSuccess(processlistOrg.First());
|
||||
|
||||
//assert
|
||||
Assert.NotNull(resultAccount);
|
||||
Assert.AreEqual(resultAccount.DnaProcessType, DnaAuditProcessType.DNAAccounts);
|
||||
Assert.AreEqual(resultAccount.ConsecutiveFailures, 0);
|
||||
|
||||
Assert.NotNull(resultAgreement);
|
||||
Assert.AreEqual(resultAgreement.DnaProcessType, DnaAuditProcessType.DNAAgreement);
|
||||
Assert.AreEqual(resultAgreement.ConsecutiveFailures, 0);
|
||||
|
||||
Assert.NotNull(resultOrg);
|
||||
Assert.AreEqual(resultOrg.DnaProcessType, DnaAuditProcessType.DNAOrganization);
|
||||
Assert.AreEqual(resultOrg.ConsecutiveFailures, 0);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task RunDnaAuditProcessesChange_HandleProcessUpdateException_Ok()
|
||||
{
|
||||
|
||||
var processlistAccount = new List<DnaAuditProcess>
|
||||
{
|
||||
new DnaAuditProcess()
|
||||
{
|
||||
ConsecutiveFailures = 0,
|
||||
DnaProcessType = DnaAuditProcessType.DNAAccounts,
|
||||
LastUpdated = DateTime.Now,
|
||||
ProcessId = 0,
|
||||
}
|
||||
};
|
||||
|
||||
var ex = new Exception();
|
||||
await _service.RunDataAuditProcesses();
|
||||
await _service.AuditDNAAccountsForTimePeriod(DateTime.Now, processlistAccount.First());
|
||||
var resultAccount = _service.HandleDnaAuditProcessException(processlistAccount.First(), ex);
|
||||
|
||||
//assert
|
||||
Assert.NotNull(resultAccount);
|
||||
Assert.AreEqual(resultAccount.DnaProcessType, DnaAuditProcessType.DNAAccounts);
|
||||
Assert.AreEqual(resultAccount.ConsecutiveFailures, 1);
|
||||
_serviceFactoryMock = new Mock<ILcuServiceFactory<IDNAAuditCheckService>>();
|
||||
_service = new DNADataAuditProcessService(_coreApiWrapperServiceMock.Object,
|
||||
_scanBiCoreApiWrapperServiceMock.Object,
|
||||
_dateTimeMock.Object,
|
||||
_dnaAuditProcessRepositoryMock.Object,
|
||||
_serviceFactoryMock.Object);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
-223
@@ -1,223 +0,0 @@
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Services;
|
||||
using LCU.Library.Internal.MemberPreferencesApiModels.Entities;
|
||||
using LCU.Library.Internal.MemberPreferencesApiModels.Enums;
|
||||
using LCU.Library.Internal.CoreApiWrapperModel.CoreModels.Agreements;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Services.DnaAuditServices;
|
||||
using LCU.API.Internal.MemberPreferencesApi.MicroApiServices;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Models.Requests;
|
||||
|
||||
namespace LCU.API.Internal.MemberPreferencesApi.UnitTests.Services
|
||||
{
|
||||
public class DNADataAuditServiceTest
|
||||
{
|
||||
private Mock<ICoreApiWrapperService> _coreApiWrapperServiceMock;
|
||||
private Mock<IOptinService> _optinServiceMock;
|
||||
private DNADataAuditService _service;
|
||||
|
||||
[SetUp]
|
||||
public void Setup()
|
||||
{
|
||||
_coreApiWrapperServiceMock = new Mock<ICoreApiWrapperService>();
|
||||
_optinServiceMock = new Mock<IOptinService>();
|
||||
_service = new DNADataAuditService(_coreApiWrapperServiceMock.Object, _optinServiceMock.Object);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HandleChangedFields_AccountChange_OK_UPDATE()
|
||||
{
|
||||
|
||||
var account = new AgreementAccount
|
||||
{
|
||||
AccountNumber = 123456,
|
||||
OvrDeliveryMethCD = "PRNT",
|
||||
AccountOwner = new AgreementAccountOwner
|
||||
{
|
||||
AccountNumber = 123456,
|
||||
AgreementNumber = 222,
|
||||
PersonNumber = 123,
|
||||
UserId = "1234"
|
||||
}
|
||||
};
|
||||
|
||||
var memberOptinSettings = new MemberOptInSettings
|
||||
{
|
||||
EStatements = null,
|
||||
UniversalOptIn = "Electronic"
|
||||
};
|
||||
|
||||
//setup
|
||||
_coreApiWrapperServiceMock.Setup(x => x.GetAgreementAccountByAccountId(123456)).ReturnsAsync(account).Verifiable();
|
||||
|
||||
_optinServiceMock.Setup(x => x.GetMemberOptInSettings("1234")).ReturnsAsync(memberOptinSettings).Verifiable();
|
||||
|
||||
var request = new DnaFieldChangeRequest()
|
||||
{
|
||||
ConsecutiveFailures = 0,
|
||||
DnaFieldIdInformation = 123456L,
|
||||
DnaProcessType = DnaAuditProcessType.DNAAgreement,
|
||||
LastUpdated = DateTime.Now,
|
||||
ProcessId = 1
|
||||
};
|
||||
|
||||
await _service.HandleAccountAuditCheck(request);
|
||||
|
||||
//assert
|
||||
_coreApiWrapperServiceMock.Verify(x => x.UpdateAgreementAccountsDeliveryMethod(It.Is<List<long>>(list => list.Contains(123456)), It.Is<string>(x => x.Equals("WWW")), It.Is<string>(x => x.Equals("1234"))), Times.Once);
|
||||
_coreApiWrapperServiceMock.Verify();
|
||||
_optinServiceMock.Verify();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HandleChangedFields_AccountChange_OK_DONTUPDATE()
|
||||
{
|
||||
var account = new AgreementAccount
|
||||
{
|
||||
AccountNumber = 123456,
|
||||
OvrDeliveryMethCD = "PRNT",
|
||||
AccountOwner = new AgreementAccountOwner
|
||||
{
|
||||
AccountNumber = 123456,
|
||||
AgreementNumber = 222,
|
||||
PersonNumber = 123,
|
||||
UserId = "1234"
|
||||
}
|
||||
};
|
||||
|
||||
var memberOptinSettings = new MemberOptInSettings
|
||||
{
|
||||
EStatements = null,
|
||||
UniversalOptIn = "Paper"
|
||||
};
|
||||
|
||||
//setup
|
||||
_coreApiWrapperServiceMock.Setup(x => x.GetAgreementAccountByAccountId(123456)).ReturnsAsync(account).Verifiable();
|
||||
|
||||
_optinServiceMock.Setup(x => x.GetMemberOptInSettings("1234"))
|
||||
.ReturnsAsync(memberOptinSettings).Verifiable();
|
||||
|
||||
var request = new DnaFieldChangeRequest()
|
||||
{
|
||||
ConsecutiveFailures = 0,
|
||||
DnaFieldIdInformation = 123456L,
|
||||
DnaProcessType = DnaAuditProcessType.DNAAccounts,
|
||||
LastUpdated = DateTime.Now,
|
||||
ProcessId = 1
|
||||
};
|
||||
|
||||
await _service.HandleAccountAuditCheck(request);
|
||||
|
||||
//assert
|
||||
_coreApiWrapperServiceMock.Verify(x => x.UpdateAgreementAccountsDeliveryMethod(It.IsAny<List<long>>(), It.IsAny<string>(), It.IsAny<string>()), Times.Never);
|
||||
_coreApiWrapperServiceMock.Verify();
|
||||
_optinServiceMock.Verify();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HandleChangedFields_AgreementChange_OK_UPDATE()
|
||||
{
|
||||
var agreement = new Agreement
|
||||
{
|
||||
AgreementNumber = 1127,
|
||||
PersonNumber = 123,
|
||||
UserId = "1234"
|
||||
};
|
||||
|
||||
var accounts = new List<AgreementAccount>
|
||||
{
|
||||
new AgreementAccount{
|
||||
AccountNumber = 123456,
|
||||
OvrDeliveryMethCD = "PRNT",
|
||||
TaxReportForPersonNumber = 123,
|
||||
AccountOwner = new AgreementAccountOwner{
|
||||
AccountNumber = 123456,
|
||||
AgreementNumber = 1127,
|
||||
PersonNumber = 123,
|
||||
UserId = "1234"
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var memberOptinSettings = new MemberOptInSettings
|
||||
{
|
||||
EStatements = null,
|
||||
UniversalOptIn = "Electronic"
|
||||
};
|
||||
|
||||
//setup
|
||||
_coreApiWrapperServiceMock.Setup(x => x.GetAgreementByAgreementId(1127)).ReturnsAsync(agreement).Verifiable();
|
||||
_coreApiWrapperServiceMock.Setup(x => x.GetAgreementAccountsByUserId("1234")).ReturnsAsync(accounts).Verifiable();
|
||||
|
||||
_optinServiceMock.Setup(x => x.GetMemberOptInSettings("1234")).ReturnsAsync(memberOptinSettings).Verifiable();
|
||||
|
||||
var request = new DnaFieldChangeRequest()
|
||||
{
|
||||
ConsecutiveFailures = 0,
|
||||
DnaFieldIdInformation = 1127L,
|
||||
DnaProcessType = DnaAuditProcessType.DNAAgreement,
|
||||
LastUpdated = DateTime.Now,
|
||||
ProcessId = 1
|
||||
};
|
||||
|
||||
await _service.HandleAgreementAuditCheck(request);
|
||||
|
||||
//assert
|
||||
_coreApiWrapperServiceMock.Verify(x => x.UpdateAgreementAccountsDeliveryMethod(It.Is<List<long>>(list => list.Contains(123456)), It.Is<string>(x => x.Equals("WWW")), It.Is<string>(x => x.Equals("1234"))), Times.Once);
|
||||
_coreApiWrapperServiceMock.Verify();
|
||||
_optinServiceMock.Verify();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task HandleChangedFields_OrganizationChange_OK_UPDATE()
|
||||
{
|
||||
var accounts = new List<AgreementAccount>
|
||||
{
|
||||
new AgreementAccount{
|
||||
AccountNumber = 123456,
|
||||
TaxReportForOrgNumber = 11267,
|
||||
OvrDeliveryMethCD = "PRNT",
|
||||
AccountOwner = new AgreementAccountOwner
|
||||
{
|
||||
AccountNumber = 123456,
|
||||
AgreementNumber = 222,
|
||||
PersonNumber = 123,
|
||||
UserId = "1234"
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var memberOptinSettings = new MemberOptInSettings
|
||||
{
|
||||
EStatements = null,
|
||||
UniversalOptIn = "Electronic"
|
||||
};
|
||||
|
||||
//setup
|
||||
|
||||
_coreApiWrapperServiceMock.Setup(x => x.GetAgreementAccountsByOrganizationId(1126)).ReturnsAsync(accounts).Verifiable();
|
||||
|
||||
_optinServiceMock.Setup(x => x.GetMemberOptInSettings("1234")).ReturnsAsync(memberOptinSettings).Verifiable();
|
||||
|
||||
var request = new DnaFieldChangeRequest()
|
||||
{
|
||||
ConsecutiveFailures = 0,
|
||||
DnaFieldIdInformation = 1126L,
|
||||
DnaProcessType = DnaAuditProcessType.DNAAgreement,
|
||||
LastUpdated = DateTime.Now,
|
||||
ProcessId = 1
|
||||
};
|
||||
|
||||
//act
|
||||
await _service.HandleOrganizationAuditCheck(request);
|
||||
|
||||
//assert
|
||||
_coreApiWrapperServiceMock.Verify(x => x.UpdateAgreementAccountsDeliveryMethod(It.Is<List<long>>(list => list.Contains(123456)), It.Is<string>(x => x.Equals("WWW")), It.Is<string>(x => x.Equals("1234"))), Times.Once);
|
||||
_coreApiWrapperServiceMock.Verify();
|
||||
_optinServiceMock.Verify();
|
||||
}
|
||||
}
|
||||
}
|
||||
+66
-31
@@ -1,48 +1,45 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Configuration;
|
||||
using LCU.API.Internal.MemberPreferencesApi.MicroApiServices;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Models;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Models.Requests;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Services.XdiServices;
|
||||
using LCU.API.Internal.MemberPreferencesApiLib.Repositories;
|
||||
using LCU.Library.Internal.LcuClassPatterns.CrudTests.Tests;
|
||||
using LCU.Library.Internal.LcuClassPatterns.CrudTests.Utilities;
|
||||
using LCU.Library.Internal.MemberPreferencesApiModels.Entities;
|
||||
using LCU.Library.Internal.MemberPreferencesApiModels.Enums;
|
||||
using LCU.Library.Internal.LcuMassTransitModels;
|
||||
using LCU.API.Internal.MemberPreferencesApiLib.Repositories;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Services.XdiServices;
|
||||
using LCU.API.Internal.MemberPreferencesApi.MicroApiServices;
|
||||
using Moq;
|
||||
using Newtonsoft.Json;
|
||||
using NUnit.Framework;
|
||||
using LCU.API.Internal.MemberPreferencesApi.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace LCU.API.Internal.MemberPreferencesApi.UnitTests.Services
|
||||
{
|
||||
public class XdiBatchItemServiceTest
|
||||
public class XdiBatchItemServiceTest : CrudServiceTest<XdiBatchProcessInfo>
|
||||
{
|
||||
private IXdiBatchService _xdiBatchItemService;
|
||||
private Mock<IXdiBatchItemsRepository> _mockBatchItemsRepository;
|
||||
private Mock<IXdiBatchProcessInfoRepository> _mockXdiBatchProcessInfoRepository;
|
||||
private Mock<IUnitOfWork> _mockUnitOfWork;
|
||||
private XdiSftpApiConfiguration _ftpConfiguration;
|
||||
private Mock<IUnifiedOptInRepository> _mockUnifiedOptinRepository;
|
||||
private Mock<IMemberPreferenceRepository> _mockMemberPreferenceRepository;
|
||||
private Mock<IFtpApiService> _mockFtpApiService;
|
||||
private ConnectionConfiguration _connectionConfiguration;
|
||||
private ReceiveEndpointConfiguration _completionReceiveEndpoint;
|
||||
private ReceiveEndpointConfigurations _endpointConfiguration;
|
||||
private Mock<IFileOperationsApiService> _mockFileOperationsApiService;
|
||||
|
||||
[SetUp]
|
||||
public void Setup()
|
||||
{
|
||||
_mockBatchItemsRepository = new Mock<IXdiBatchItemsRepository>();
|
||||
_mockXdiBatchProcessInfoRepository = new Mock<IXdiBatchProcessInfoRepository>();
|
||||
_mockUnitOfWork = new Mock<IUnitOfWork>();
|
||||
_ftpConfiguration = new XdiSftpApiConfiguration();
|
||||
_mockUnifiedOptinRepository = new Mock<IUnifiedOptInRepository>();
|
||||
_mockMemberPreferenceRepository = new Mock<IMemberPreferenceRepository>();
|
||||
_mockFtpApiService = new Mock<IFtpApiService>();
|
||||
_endpointConfiguration = new ReceiveEndpointConfigurations();
|
||||
_completionReceiveEndpoint = _endpointConfiguration.XdiBatchConfirmEndpoint;
|
||||
_mockFileOperationsApiService = new Mock<IFileOperationsApiService>();
|
||||
|
||||
_xdiBatchItemService = new XdiBatchService(_mockBatchItemsRepository.Object, _mockUnitOfWork.Object,
|
||||
_ftpConfiguration, _mockUnifiedOptinRepository.Object, _mockMemberPreferenceRepository.Object,
|
||||
_connectionConfiguration, _endpointConfiguration, _mockFtpApiService.Object);
|
||||
_mockUnifiedOptinRepository.Object, _mockMemberPreferenceRepository.Object,
|
||||
_mockFileOperationsApiService.Object, _mockXdiBatchProcessInfoRepository.Object);
|
||||
}
|
||||
|
||||
[Test]
|
||||
@@ -226,7 +223,7 @@ namespace LCU.API.Internal.MemberPreferencesApi.UnitTests.Services
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task CreateFtpQueryPayload_Ok()
|
||||
public async Task CreateXdiBatchExport_MultipleResults_Ok()
|
||||
{
|
||||
var testFile = new XdiBatchFile
|
||||
{
|
||||
@@ -308,7 +305,26 @@ namespace LCU.API.Internal.MemberPreferencesApi.UnitTests.Services
|
||||
UniversalOptIn = DeliveryPreference.Hold
|
||||
});
|
||||
|
||||
var results = await _xdiBatchItemService.CreateFtpPayload(testFile);
|
||||
var xdiBatchProcessInfo = new List<XdiBatchProcessInfo>
|
||||
{
|
||||
new()
|
||||
{
|
||||
XdiBatchProcessInfoId = (int)typeof(int).GetRandomValue(),
|
||||
StartTimeStamp = DateTime.Now,
|
||||
XdiBatchProcessStatus = XdiBatchProcessStatus.InProgress,
|
||||
ApiResponse = "Started"
|
||||
}
|
||||
};
|
||||
|
||||
var request = new XdiBatchRequest()
|
||||
{
|
||||
XdiAppendFileRootBasePath = "test/test"
|
||||
};
|
||||
|
||||
_mockXdiBatchProcessInfoRepository.Setup(x => x.FindBatchProcessInfoByStatus(XdiBatchProcessStatus.InProgress)).ReturnsAsync(xdiBatchProcessInfo)
|
||||
.Verifiable();
|
||||
|
||||
var results = await _xdiBatchItemService.BuildXdiFiles(testFile, request.XdiAppendFileRootBasePath, xdiBatchProcessInfo.FirstOrDefault());
|
||||
|
||||
Assert.AreEqual(4, results.Count);
|
||||
Assert.True(results.Exists(x => x.UserId == "100" && x.Value == "[email protected]"));
|
||||
@@ -318,7 +334,7 @@ namespace LCU.API.Internal.MemberPreferencesApi.UnitTests.Services
|
||||
}
|
||||
|
||||
[Test]
|
||||
public async Task CreateFtpQueryPayload_No_Result_Ok()
|
||||
public async Task CreateXdiBatchExport_Result_Ok()
|
||||
{
|
||||
var testFile = new XdiBatchFile
|
||||
{
|
||||
@@ -331,6 +347,17 @@ namespace LCU.API.Internal.MemberPreferencesApi.UnitTests.Services
|
||||
}
|
||||
};
|
||||
|
||||
var xdiBatchProcessInfo = new List<XdiBatchProcessInfo>
|
||||
{
|
||||
new()
|
||||
{
|
||||
XdiBatchProcessInfoId = (int)typeof(int).GetRandomValue(),
|
||||
StartTimeStamp = DateTime.Now,
|
||||
XdiBatchProcessStatus = XdiBatchProcessStatus.InProgress,
|
||||
ApiResponse = "Started"
|
||||
}
|
||||
};
|
||||
|
||||
_mockUnifiedOptinRepository
|
||||
.Setup(x => x.GetMemberOptInSettingsNoTracking("100")).ReturnsAsync(new MemberOptInSettings
|
||||
{
|
||||
@@ -341,8 +368,16 @@ namespace LCU.API.Internal.MemberPreferencesApi.UnitTests.Services
|
||||
_mockUnifiedOptinRepository
|
||||
.Setup(x => x.GetMemberOptInSettingsNoTracking(It.Is<string>(userId => int.Parse(userId) > 100)))
|
||||
.Returns(Task.FromResult<MemberOptInSettings>(null));
|
||||
|
||||
var results = await _xdiBatchItemService.CreateFtpPayload(testFile);
|
||||
|
||||
_mockXdiBatchProcessInfoRepository.Setup(x => x.FindBatchProcessInfoByStatus(XdiBatchProcessStatus.InProgress)).ReturnsAsync(xdiBatchProcessInfo)
|
||||
.Verifiable();
|
||||
|
||||
var request = new XdiBatchRequest()
|
||||
{
|
||||
XdiAppendFileRootBasePath = "test/test"
|
||||
};
|
||||
|
||||
var results = await _xdiBatchItemService.BuildXdiFiles(testFile, request.XdiAppendFileRootBasePath, xdiBatchProcessInfo.FirstOrDefault());
|
||||
|
||||
Assert.AreEqual(1, results.Count);
|
||||
Assert.True(results.Exists(x => x.UserId == "100" && x.Value == DeliveryPreference.Paper));
|
||||
@@ -351,20 +386,20 @@ namespace LCU.API.Internal.MemberPreferencesApi.UnitTests.Services
|
||||
[Test]
|
||||
public async Task MarkPendingSuccessful_OK()
|
||||
{
|
||||
var payload = new List<FtpQueuePayloadItem>()
|
||||
var batchFileExportList = new List<XdiBatchFileExport>()
|
||||
{
|
||||
new FtpQueuePayloadItem()
|
||||
new XdiBatchFileExport()
|
||||
{
|
||||
UserId = "100",
|
||||
Value = DeliveryPreference.Paper
|
||||
},
|
||||
new FtpQueuePayloadItem()
|
||||
new XdiBatchFileExport()
|
||||
{
|
||||
UserId = "101",
|
||||
Value = "[email protected]"
|
||||
}
|
||||
};
|
||||
var payloadString = JsonConvert.SerializeObject(payload);
|
||||
var payloadString = JsonConvert.SerializeObject(batchFileExportList);
|
||||
|
||||
var response = new LCU.Library.Internal.ApiResponse.Models.Response()
|
||||
{
|
||||
@@ -381,7 +416,7 @@ namespace LCU.API.Internal.MemberPreferencesApi.UnitTests.Services
|
||||
_mockBatchItemsRepository.Setup(x => x.MarkPendingSuccessful(It.IsAny<List<string>>())).ReturnsAsync(true)
|
||||
.Verifiable();
|
||||
|
||||
var result = await _xdiBatchItemService.MarkPendingSuccessful(response);
|
||||
var result = await _xdiBatchItemService.MarkPendingSuccessful(batchFileExportList);
|
||||
|
||||
Assert.True(result);
|
||||
|
||||
|
||||
+1
-1
@@ -47,7 +47,7 @@ namespace LCU.API.Internal.MemberPreferencesApi.UnitTests.XdiBatch
|
||||
var results = newFile.ConvertToDataFile();
|
||||
|
||||
Assert.NotNull(fileName);
|
||||
Assert.AreEqual("Enrollment_AddElectronic_LMCU.txt", fileName);
|
||||
Assert.AreEqual("Enrollment_AddElectronic_LMCU", fileName);
|
||||
|
||||
Assert.NotNull(results);
|
||||
Assert.NotNull(stringResults);
|
||||
|
||||
Reference in New Issue
Block a user