180 lines
5.8 KiB
C#
180 lines
5.8 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using LCU.API.Collections.RepoApi.Domain.AlertChecker;
|
|
using LCU.API.Collections.RepoApi.Domain.Processing;
|
|
using LCU.Shared.Collections.RepoApiLib.Models;
|
|
using Xunit;
|
|
|
|
namespace LCU.API.Collections.RepoApiTests.AlertCheckers
|
|
{
|
|
public class RedemptionEndedNoTitleOrderedCheckerTest
|
|
{
|
|
private readonly RedemptionEndedNoTitleOrderedChecker _checker;
|
|
|
|
public RedemptionEndedNoTitleOrderedCheckerTest()
|
|
{
|
|
_checker = new RedemptionEndedNoTitleOrderedChecker();
|
|
}
|
|
|
|
[Fact]
|
|
public void Create_TooFewDays_Ok()
|
|
{
|
|
var originalRepoAccount = new RepoAccount()
|
|
{
|
|
AccountNo = "123456-789",
|
|
Status = "REPO"
|
|
};
|
|
var updatedRepoAccount = new RepoAccount()
|
|
{
|
|
AccountNo = "123456-789",
|
|
Status = "REPO",
|
|
RedemptionExpiredDate = DateTime.Now.AddDays(-7),
|
|
Collaterals = new List<Collateral>()
|
|
{
|
|
new Collateral()
|
|
{
|
|
AuctionAssignmentToCollaterals = new List<AuctionAssignmentToCollateral>()
|
|
{
|
|
new AuctionAssignmentToCollateral()
|
|
{
|
|
AuctionAssignmentId = 1,
|
|
CollateralId = 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
};
|
|
var slip = new RepoAccountProcessingSlip()
|
|
{
|
|
ExistingRepoAccount = originalRepoAccount,
|
|
UpdatedRepoAccount = updatedRepoAccount
|
|
};
|
|
|
|
var result = _checker.CheckForAlert(slip);
|
|
|
|
Assert.Null(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Create_StatusNotRepo_Ok()
|
|
{
|
|
var originalRepoAccount = new RepoAccount()
|
|
{
|
|
AccountNo = "123456-789",
|
|
Status = "O4R"
|
|
};
|
|
var updatedRepoAccount = new RepoAccount()
|
|
{
|
|
AccountNo = "123456-789",
|
|
Status = "O4R",
|
|
RedemptionExpiredDate = DateTime.Now.AddDays(-8),
|
|
Collaterals = new List<Collateral>()
|
|
{
|
|
new Collateral()
|
|
{
|
|
AuctionAssignmentToCollaterals = new List<AuctionAssignmentToCollateral>()
|
|
{
|
|
new AuctionAssignmentToCollateral()
|
|
{
|
|
AuctionAssignmentId = 1,
|
|
CollateralId = 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
};
|
|
|
|
var slip = new RepoAccountProcessingSlip()
|
|
{
|
|
ExistingRepoAccount = originalRepoAccount,
|
|
UpdatedRepoAccount = updatedRepoAccount
|
|
};
|
|
|
|
var result = _checker.CheckForAlert(slip);
|
|
|
|
Assert.Null(result);
|
|
}
|
|
|
|
[Fact]
|
|
public void Create_RedemptionEndedNoTitleOrdered_Ok()
|
|
{
|
|
var originalRepoAccount = new RepoAccount()
|
|
{
|
|
AccountNo = "123456-789",
|
|
Status = "REPO"
|
|
};
|
|
var updatedRepoAccount = new RepoAccount()
|
|
{
|
|
AccountNo = "123456-789",
|
|
Status = "REPO",
|
|
RedemptionExpiredDate = DateTime.Now.AddDays(-8),
|
|
Collaterals = new List<Collateral>()
|
|
{
|
|
new Collateral()
|
|
{
|
|
AuctionAssignmentToCollaterals = new List<AuctionAssignmentToCollateral>()
|
|
{
|
|
new AuctionAssignmentToCollateral()
|
|
{
|
|
AuctionAssignmentId = 1,
|
|
CollateralId = 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
};
|
|
|
|
var slip = new RepoAccountProcessingSlip()
|
|
{
|
|
ExistingRepoAccount = originalRepoAccount,
|
|
UpdatedRepoAccount = updatedRepoAccount
|
|
};
|
|
|
|
var result = _checker.CheckForAlert(slip);
|
|
|
|
Assert.NotNull(result);
|
|
Assert.Equal("Redemption Ended No Title Ordered", result[0].Message);
|
|
}
|
|
|
|
[Fact]
|
|
public void Create_RedemptionEndedTitleOrdered_Ok()
|
|
{
|
|
var originalRepoAccount = new RepoAccount()
|
|
{
|
|
AccountNo = "123456-789",
|
|
Status = "REPO"
|
|
};
|
|
var updatedRepoAccount = new RepoAccount()
|
|
{
|
|
AccountNo = "123456-789",
|
|
Status = "REPO",
|
|
RedemptionExpiredDate = DateTime.Now.AddDays(-8),
|
|
Collaterals = new List<Collateral>()
|
|
{
|
|
new Collateral()
|
|
{
|
|
AuctionAssignmentToCollaterals = new List<AuctionAssignmentToCollateral>()
|
|
{
|
|
new AuctionAssignmentToCollateral()
|
|
{
|
|
AuctionAssignmentId = 1,
|
|
CollateralId = 1
|
|
}
|
|
},
|
|
RetitledInLandmarkName = DateTime.Now.AddDays(-5)
|
|
}
|
|
}
|
|
};
|
|
|
|
var slip = new RepoAccountProcessingSlip()
|
|
{
|
|
ExistingRepoAccount = originalRepoAccount,
|
|
UpdatedRepoAccount = updatedRepoAccount
|
|
};
|
|
|
|
var result = _checker.CheckForAlert(slip);
|
|
|
|
Assert.Null(result);
|
|
}
|
|
}
|
|
} |