158 lines
6.5 KiB
C#
158 lines
6.5 KiB
C#
using Moq;
|
|
using NUnit.Framework;
|
|
using LCU.Api.Internal.DataCleanUp.Services;
|
|
using LCU.Api.Internal.DataCleanUp.DataAccess;
|
|
using LCU.Library.Internal.CoreApiWrapperModel.CoreModels.MemberAgreements;
|
|
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
using LCU.Library.Internal.DataCleanUpModel.Enum;
|
|
using LCU.Library.Internal.DataCleanUpModel.Models;
|
|
using LCU.Library.Internal.CoreApiWrapperModel.CoreModels.CoreResponses;
|
|
using LCU.Library.Internal.CoreApiWrapperModel.CoreModels.CoreSoapRequests;
|
|
|
|
namespace LCU.Api.Internal.DataCleanUpTest.Services;
|
|
|
|
public class CloseCustodialVruAgreementsServiceTest
|
|
{
|
|
private CloseCustodialVruAgreementsService _closeCustodialVruAgreementsService;
|
|
private Mock<ICoreApiWrapperService> _mockCoreApiWrapperService;
|
|
|
|
[SetUp]
|
|
public void Setup()
|
|
{
|
|
_mockCoreApiWrapperService = new Mock<ICoreApiWrapperService>();
|
|
_closeCustodialVruAgreementsService = new CloseCustodialVruAgreementsService(_mockCoreApiWrapperService.Object);
|
|
}
|
|
|
|
[Test]
|
|
public async Task CleanUp_Success()
|
|
{
|
|
//Set Up GetActiveCustodialVruCardAgreementAgreePersons
|
|
var testAgreePersons = new List<AgreePerson>()
|
|
{
|
|
new AgreePerson()
|
|
{
|
|
PersonNumber = 1,
|
|
UserId = "11",
|
|
AgreeNumber = 1
|
|
}
|
|
};
|
|
_mockCoreApiWrapperService.Setup(x => x.GetActiveCustodialVruCardAgreementAgreePersons()).ReturnsAsync(testAgreePersons);
|
|
|
|
//Set Up UpdateAccessChannelPersons
|
|
var basicResponse = new BasicResponse()
|
|
{
|
|
Success = true,
|
|
Errors = new List<string>()
|
|
};
|
|
_mockCoreApiWrapperService.Setup(x => x.UpdatePersonAgreementDetailTypes(It.IsAny<PersonAgreementDetailTypeRequest>()))
|
|
.ReturnsAsync(basicResponse);
|
|
|
|
var testRequest = new DataCleanUpRequest()
|
|
{
|
|
CleanUpType = CleanUpTypes.HyphenatedUserId
|
|
};
|
|
var result = await _closeCustodialVruAgreementsService.CleanUp(testRequest);
|
|
|
|
Assert.NotNull(result);
|
|
Assert.AreEqual(testRequest, result.Request);
|
|
Assert.IsTrue(result.Successful);
|
|
Assert.IsEmpty(result.ResponseStack);
|
|
_mockCoreApiWrapperService.Verify(x => x.GetActiveCustodialVruCardAgreementAgreePersons(), Times.Once);
|
|
_mockCoreApiWrapperService.Verify(x => x.UpdatePersonAgreementDetailTypes(It.IsAny<PersonAgreementDetailTypeRequest>()), Times.Once);
|
|
}
|
|
|
|
[Test]
|
|
public async Task CleanUp_AgreePersons_Null_Fail()
|
|
{
|
|
//Set Up GetActiveCustodialVruCardAgreementAgreePersons
|
|
List<AgreePerson> testAgreePersons = null;
|
|
_mockCoreApiWrapperService.Setup(x => x.GetActiveCustodialVruCardAgreementAgreePersons()).ReturnsAsync(testAgreePersons);
|
|
|
|
var testRequest = new DataCleanUpRequest()
|
|
{
|
|
CleanUpType = CleanUpTypes.HyphenatedUserId
|
|
};
|
|
var result = await _closeCustodialVruAgreementsService.CleanUp(testRequest);
|
|
|
|
Assert.NotNull(result);
|
|
Assert.AreEqual(testRequest, result.Request);
|
|
Assert.IsFalse(result.Successful);
|
|
Assert.AreEqual(1, result.ResponseStack.Count);
|
|
_mockCoreApiWrapperService.Verify(x => x.GetActiveCustodialVruCardAgreementAgreePersons(), Times.Once);
|
|
_mockCoreApiWrapperService.Verify(x => x.UpdatePersonAgreementDetailTypes(It.IsAny<PersonAgreementDetailTypeRequest>()), Times.Never);
|
|
}
|
|
|
|
[Test]
|
|
public async Task CleanUp_UpdateResult_Null_Fail()
|
|
{
|
|
//Set Up GetActiveCustodialVruCardAgreementAgreePersons
|
|
var testAgreePersons = new List<AgreePerson>()
|
|
{
|
|
new AgreePerson()
|
|
{
|
|
PersonNumber = 1,
|
|
UserId = "11",
|
|
AgreeNumber = 1
|
|
}
|
|
};
|
|
_mockCoreApiWrapperService.Setup(x => x.GetActiveCustodialVruCardAgreementAgreePersons()).ReturnsAsync(testAgreePersons);
|
|
|
|
//Set Up UpdateAccessChannelPersons
|
|
BasicResponse? basicResponse = null;
|
|
_mockCoreApiWrapperService.Setup(x => x.UpdatePersonAgreementDetailTypes(It.IsAny<PersonAgreementDetailTypeRequest>()))
|
|
.ReturnsAsync(basicResponse);
|
|
|
|
var testRequest = new DataCleanUpRequest()
|
|
{
|
|
CleanUpType = CleanUpTypes.HyphenatedUserId
|
|
};
|
|
var result = await _closeCustodialVruAgreementsService.CleanUp(testRequest);
|
|
|
|
Assert.NotNull(result);
|
|
Assert.AreEqual(testRequest, result.Request);
|
|
Assert.IsFalse(result.Successful);
|
|
Assert.AreEqual(1, result.ResponseStack.Count);
|
|
_mockCoreApiWrapperService.Verify(x => x.GetActiveCustodialVruCardAgreementAgreePersons(), Times.Once);
|
|
_mockCoreApiWrapperService.Verify(x => x.UpdatePersonAgreementDetailTypes(It.IsAny<PersonAgreementDetailTypeRequest>()), Times.Once);
|
|
}
|
|
|
|
[Test]
|
|
public async Task CleanUp_BasicResponse_Return_NotSuccessful_Fail()
|
|
{
|
|
//Set Up GetActiveCustodialVruCardAgreementAgreePersons
|
|
var testAgreePersons = new List<AgreePerson>()
|
|
{
|
|
new AgreePerson()
|
|
{
|
|
PersonNumber = 1,
|
|
UserId = "11",
|
|
AgreeNumber = 1
|
|
}
|
|
};
|
|
_mockCoreApiWrapperService.Setup(x => x.GetActiveCustodialVruCardAgreementAgreePersons()).ReturnsAsync(testAgreePersons);
|
|
|
|
//Set Up UpdateAccessChannelPersons
|
|
var basicResponse = new BasicResponse()
|
|
{
|
|
Success = false,
|
|
Errors = new List<string>() { "Error has occured" }
|
|
};
|
|
_mockCoreApiWrapperService.Setup(x => x.UpdatePersonAgreementDetailTypes(It.IsAny<PersonAgreementDetailTypeRequest>()))
|
|
.ReturnsAsync(basicResponse);
|
|
|
|
var testRequest = new DataCleanUpRequest()
|
|
{
|
|
CleanUpType = CleanUpTypes.HyphenatedUserId
|
|
};
|
|
var result = await _closeCustodialVruAgreementsService.CleanUp(testRequest);
|
|
|
|
Assert.NotNull(result);
|
|
Assert.AreEqual(testRequest, result.Request);
|
|
Assert.IsFalse(result.Successful);
|
|
Assert.AreEqual(1, result.ResponseStack.Count);
|
|
_mockCoreApiWrapperService.Verify(x => x.GetActiveCustodialVruCardAgreementAgreePersons(), Times.Once);
|
|
_mockCoreApiWrapperService.Verify(x => x.UpdatePersonAgreementDetailTypes(It.IsAny<PersonAgreementDetailTypeRequest>()), Times.Once);
|
|
}
|
|
}
|