first commit
This commit is contained in:
+33
@@ -0,0 +1,33 @@
|
||||
using Xunit;
|
||||
using CRIF.ACTion.Decisioning;
|
||||
|
||||
namespace CRIF.ACTion.Tests.Decisioning
|
||||
{
|
||||
public class DecisionStatusBuilderTest
|
||||
{
|
||||
private const string LoanApplicationId = "1200398";
|
||||
private const string AppDetailId = "3380";
|
||||
|
||||
[Fact]
|
||||
public void Validate()
|
||||
{
|
||||
var createAppElement =
|
||||
new DecisionStatusBuilder(LoanApplicationId, AppDetailId, TestCommon.GetTestSettings()).Build();
|
||||
|
||||
Assert.Empty(TestCommon.Validate(createAppElement));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void GetDecisionStatus()
|
||||
{
|
||||
var createAppElement =
|
||||
new DecisionStatusBuilder(LoanApplicationId, AppDetailId, TestCommon.GetTestSettings()).Build();
|
||||
|
||||
string comparePath = "ExampleXML" + System.IO.Path.DirectorySeparatorChar + "GetDecisionStatus" + System.IO.Path.DirectorySeparatorChar + "GetDecisionStatus.xml";
|
||||
|
||||
var results = TestCommon.Compare(createAppElement, comparePath);
|
||||
|
||||
Assert.Empty(results);
|
||||
}
|
||||
}
|
||||
}
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
using System.Xml.Linq;
|
||||
using Xunit;
|
||||
using CRIF.ACTion.Decisioning;
|
||||
using Landmark.OLA.Models.Decisioning.Enums;
|
||||
|
||||
namespace CRIF.ACTion.Tests.Decisioning
|
||||
{
|
||||
public class DecisioningStateResponseParserTest
|
||||
{
|
||||
private readonly string LoanApplicationId = "1200400";
|
||||
|
||||
[Fact]
|
||||
public void SendToDecisioningResponse()
|
||||
{
|
||||
string successResponsePath = "ExampleXML" + System.IO.Path.DirectorySeparatorChar + "SendToDecisioningParser" + System.IO.Path.DirectorySeparatorChar + "SuccessResponse.xml";
|
||||
|
||||
var successResponse = (XElement)XDocument.Load(successResponsePath).FirstNode;
|
||||
|
||||
var parser = new DecisioningStateResponseParser();
|
||||
|
||||
parser.SetLoanId(LoanApplicationId);
|
||||
|
||||
var result = parser.Parse(successResponse);
|
||||
|
||||
Assert.Equal(DecisioningState.Requested, result);
|
||||
}
|
||||
}
|
||||
}
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
using Xunit;
|
||||
using CRIF.ACTion.Decisioning;
|
||||
|
||||
namespace CRIF.ACTion.Tests.Decisioning
|
||||
{
|
||||
public class GetApplicationProductsRequestBuilderTest
|
||||
{
|
||||
private const string LoanApplicationId = "1200217";
|
||||
|
||||
[Fact]
|
||||
public void Validate()
|
||||
{
|
||||
var getApplicationProductsElement =
|
||||
new GetApplicationProductsRequestBuilder(LoanApplicationId, TestCommon.GetTestSettings()).Build();
|
||||
|
||||
Assert.Empty(TestCommon.Validate(getApplicationProductsElement));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void GetDecisionStatus()
|
||||
{
|
||||
var getApplicationProductsElement =
|
||||
new GetApplicationProductsRequestBuilder(LoanApplicationId, TestCommon.GetTestSettings()).Build();
|
||||
|
||||
string comparePath = "ExampleXML" + System.IO.Path.DirectorySeparatorChar + "GetApplicationProducts" + System.IO.Path.DirectorySeparatorChar + "GetApplicationProducts.xml";
|
||||
|
||||
var results = TestCommon.Compare(getApplicationProductsElement, comparePath);
|
||||
|
||||
Assert.Empty(results);
|
||||
}
|
||||
}
|
||||
}
|
||||
+60
@@ -0,0 +1,60 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Xml.Linq;
|
||||
using Xunit;
|
||||
using CRIF.ACTion.Decisioning;
|
||||
using Landmark.OLA.Models.Decisioning;
|
||||
using Landmark.OLA.Models.Decisioning.Enums;
|
||||
|
||||
namespace CRIF.ACTion.Tests.Decisioning
|
||||
{
|
||||
public class GetApplicationProductsResponseParserTest
|
||||
{
|
||||
private const string LoanApplicationId = "1200217";
|
||||
|
||||
[Fact]
|
||||
public void DecisionStatus_Review()
|
||||
{
|
||||
GetDecisionStatusParserResponse("CashBackCC_Under-Review.xml",
|
||||
new DecisioningDetails([85,])
|
||||
{
|
||||
DecisioningState = DecisioningState.Ready,
|
||||
DecisioningResult = DecisioningResult.DecisionStatus_Review,
|
||||
});
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void InvalidApplication()
|
||||
{
|
||||
/*
|
||||
This situation would likely not occur with our use cases, but if an application has more than one
|
||||
AppDetail section, the client will need to ask for a specific result.
|
||||
*/
|
||||
Assert.Throws<ArgumentException>(() =>
|
||||
GetDecisionStatusParserResponse("Multiple-AppDetails.xml", null));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void InvalidApplicationIdInResponse()
|
||||
{
|
||||
Assert.Throws<InvalidOperationException>(() =>
|
||||
GetDecisionStatusParserResponse("InvalidApplicationId.xml", null));
|
||||
}
|
||||
|
||||
|
||||
private static void GetDecisionStatusParserResponse(string fileName, DecisioningDetails expectedResult)
|
||||
{
|
||||
string successResponsePath = "ExampleXML" + System.IO.Path.DirectorySeparatorChar + "GetApplicationsProductsParser" + System.IO.Path.DirectorySeparatorChar + fileName;
|
||||
|
||||
var decisionResponse = (XElement)XDocument.Load(successResponsePath).FirstNode;
|
||||
|
||||
var parser = new GetApplicationProductsResponseParser();
|
||||
|
||||
parser.SetLoanId(LoanApplicationId);
|
||||
|
||||
var result = parser.Parse(decisionResponse);
|
||||
|
||||
Assert.Equal(expectedResult, result);
|
||||
}
|
||||
}
|
||||
}
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
using Xunit;
|
||||
using CRIF.ACTion.Decisioning;
|
||||
|
||||
namespace CRIF.ACTion.Tests.Decisioning
|
||||
{
|
||||
public class SendToDecisioningRequestBuilderTest
|
||||
{
|
||||
private readonly string LoanApplicationId = "1200400";
|
||||
|
||||
[Fact]
|
||||
public void Validate()
|
||||
{
|
||||
var createAppElement =
|
||||
new SendToDecisioningRequestBuilder(LoanApplicationId, TestCommon.GetTestSettings()).Build();
|
||||
|
||||
Assert.Empty(TestCommon.Validate(createAppElement));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SendToDecisioning()
|
||||
{
|
||||
var createAppElement =
|
||||
new SendToDecisioningRequestBuilder(LoanApplicationId, TestCommon.GetTestSettings()).Build();
|
||||
|
||||
string comparePath = "ExampleXML" + System.IO.Path.DirectorySeparatorChar + "SendToDecisioning" + System.IO.Path.DirectorySeparatorChar + "sendToDecisioning.xml";
|
||||
|
||||
var results = TestCommon.Compare(createAppElement, comparePath);
|
||||
|
||||
Assert.Empty(results);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user