Files
monorepo/LCU.API.Internal.OnlineLoanApp/CRIF.ACTion.Tests/Loan/LienPositionTest.cs
T
2026-03-11 11:18:25 -05:00

63 lines
2.4 KiB
C#

using System.Collections.Generic;
using System.IO;
using Xunit;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using CRIF.ACTion.Loan.Assets;
using Landmark.OLA.Models.Assets;
using Landmark.OLA.Models.Assets.Enums;
namespace CRIF.ACTion.Tests.Loan
{
public class LienPositionTest
{
private readonly RealEstateBase _realEstateBase = new()
{
CurrentlyBeingRemodeledOrImproved = false,
CurrentlyListedForSale = true,
Use = PropertyUse.SecondHome,
LienPosition = new LienPosition
{
HasFirstMortgage = true,
HasSecondMortgage = true,
PayoffFirstMortgage = false,
PayoffSecondMortgage = false
}
};
[Fact]
public void GetFirstLienPositionTest()
{
_ = new RealEstateProperty(_realEstateBase);
using StreamReader file = File.OpenText("Loan" + Path.DirectorySeparatorChar +
"json" + Path.DirectorySeparatorChar + "TestLienPositions.json");
using JsonTextReader reader = new(file);
JObject allData = (JObject)JToken.ReadFrom(reader);
JArray firstLien = (JArray)allData["first"];
IList<LienPosition> validFirstLienPositions = firstLien.ToObject<IList<LienPosition>>();
JArray secondLien = (JArray)allData["second"];
IList<LienPosition> validSecondLienPositions = secondLien.ToObject<IList<LienPosition>>();
JArray thirdLien = (JArray)allData["third"];
IList<LienPosition> validThirdLienPositions = thirdLien.ToObject<IList<LienPosition>>();
foreach (var position in validFirstLienPositions)
{
LienPositionType calculatedPosition = RealEstateProperty.GetLienPosition(position);
Assert.Equal(LienPositionType.First, calculatedPosition);
}
foreach (var position in validSecondLienPositions)
{
LienPositionType calculatedPosition = RealEstateProperty.GetLienPosition(position);
Assert.Equal(LienPositionType.Second, calculatedPosition);
}
foreach (var position in validThirdLienPositions)
{
LienPositionType calculatedPosition = RealEstateProperty.GetLienPosition(position);
Assert.Equal(LienPositionType.Third, calculatedPosition);
}
}
}
}