57 lines
2.2 KiB
C#
57 lines
2.2 KiB
C#
using System.Threading.Tasks;
|
|
using Moq;
|
|
using Newtonsoft.Json;
|
|
using Xunit;
|
|
using CRIF.ACTion.Services.Crif;
|
|
using Landmark.OLA.Models.Decisioning;
|
|
using Landmark.OLA.Models.Decisioning.Enums;
|
|
|
|
namespace Landmark.OLA.Integration.Tests
|
|
{
|
|
public class DecisionControllerTest : OlaIntegrationTest
|
|
{
|
|
public DecisionControllerTest() : base()
|
|
{
|
|
var decisionResult = new DecisioningDetails()
|
|
{
|
|
DecisioningState = DecisioningState.Ready,
|
|
DecisioningResult = DecisioningResult.AcceptanceStatus_Provisional
|
|
};
|
|
|
|
mockVendorClient.Setup(repo => repo.GetDecisionStatus("555")).Throws(new Error13Exception("Test Failure"));
|
|
mockVendorClient.Setup(repo => repo.GetDecisionStatus("444")).ReturnsAsync(decisionResult);
|
|
}
|
|
|
|
[Fact]
|
|
public async Task GetDecisionSpecialError13()
|
|
{
|
|
// The endpoint or route of the controller action.
|
|
var httpResponse = await _client.GetAsync("/api/LoanApplication/555/DecisioningDetails");
|
|
|
|
// Must be successful.
|
|
httpResponse.EnsureSuccessStatusCode();
|
|
|
|
// Deserialize and examine results.
|
|
var stringResponse = await httpResponse.Content.ReadAsStringAsync();
|
|
var status = JsonConvert.DeserializeObject<DecisioningDetails>(stringResponse);
|
|
Assert.Equal(DecisioningState.Unknown, status.DecisioningState);
|
|
Assert.Equal(DecisioningResult.ProcessStatus_Incomplete, status.DecisioningResult);
|
|
}
|
|
|
|
[Fact]
|
|
public async Task GetDecisionSuccess()
|
|
{
|
|
// The endpoint or route of the controller action.
|
|
var httpResponse = await _client.GetAsync("/api/LoanApplication/444/DecisioningDetails");
|
|
|
|
// Must be successful.
|
|
httpResponse.EnsureSuccessStatusCode();
|
|
|
|
// Deserialize and examine results.
|
|
var stringResponse = await httpResponse.Content.ReadAsStringAsync();
|
|
var status = JsonConvert.DeserializeObject<DecisioningDetails>(stringResponse);
|
|
Assert.Equal(DecisioningState.Ready, status.DecisioningState);
|
|
}
|
|
}
|
|
}
|