Files
monorepo/LCU.API.Internal.OnlineLoanApp/Landmark.OLA.Integration.Tests/CoreAccessServiceTest.cs
T
2026-03-11 11:18:25 -05:00

112 lines
3.7 KiB
C#

using System.Collections.Generic;
using Xunit;
using Landmark.OLA.Application.Controllers;
using Landmark.OLA.Application.Services;
using Landmark.OLA.Models.Core;
namespace Landmark.OLA.Integration.Tests
{
public class CoreAccessServiceTest
{
private readonly CoreAccessService coreAccessService;
private readonly List<OnlineIdentityFormData> forms;
private readonly List<CoreMemberOwner> owners;
public CoreAccessServiceTest()
{
coreAccessService = new CoreAccessService();
forms =
[
new OnlineIdentityFormData()
{
DateOfBirth = "2009-01-01",
SocialSecurityNumber = "9999"
},
new OnlineIdentityFormData()
{
DateOfBirth = "01/01/2009",
SocialSecurityNumber = "9999"
},
new OnlineIdentityFormData()
{
DateOfBirth = "01/01/09",
SocialSecurityNumber = "7777"
}
];
owners =
[
new CoreMemberOwner()
{
Address = "address",
BirthDate = "2009-01-01",
DriverLicense = "F620-3888-0442-88",
IndividualId = 99,
Name = "John Tester",
TaxId = "999-99-9999",
Type = "Primary"
},
new CoreMemberOwner()
{
Address = "address",
BirthDate = "2006-01-01",
DriverLicense = "F620-3999-0442-99",
IndividualId = 100,
Name = "Jane Tester",
TaxId = "999-99-8888",
Type = "Secondary"
}
];
}
[Fact]
public void FindMatchingOwner_Bad_Args()
{
var result = coreAccessService.FindMatchingOwner(null, null);
Assert.Null(result);
var document = new OnlineIdentityFormData()
{
DateOfBirth = "asdfasd",
SocialSecurityNumber = "asdf"
};
result = coreAccessService.FindMatchingOwner(document, null);
Assert.Null(result);
var ownersEmpty = new List<CoreMemberOwner>() { };
result = coreAccessService.FindMatchingOwner(document, ownersEmpty);
Assert.Null(result);
result = coreAccessService.FindMatchingOwner(null, owners);
Assert.Null(result);
}
[Fact]
public void FindMatchingOwnerBasic()
{
var result = coreAccessService.FindMatchingOwner(forms[0], owners);
Assert.NotNull(result);
Assert.Equal(owners[0].IndividualId, result.IndividualId);
result = coreAccessService.FindMatchingOwner(forms[1], owners);
Assert.NotNull(result);
Assert.Equal(owners[0].IndividualId, result.IndividualId);
result = coreAccessService.FindMatchingOwner(forms[2], owners);
Assert.Null(result);
}
[Fact]
public void DoesOwnerMatchBasic()
{
Assert.True(coreAccessService.DoesOwnerMatch(owners[0], forms[0]));
Assert.True(coreAccessService.DoesOwnerMatch(owners[0], forms[1]));
Assert.False(coreAccessService.DoesOwnerMatch(owners[0], forms[2]));
Assert.False(coreAccessService.DoesOwnerMatch(owners[1], forms[0]));
Assert.False(coreAccessService.DoesOwnerMatch(owners[1], forms[1]));
Assert.False(coreAccessService.DoesOwnerMatch(owners[1], forms[2]));
}
}
}