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 SkipPaidCheckerTest { [Fact] public void Create_Ok() { var checker = new SkipPaidChecker(); // 106, 15 var originalRepoAccount = new RepoAccount() { AccountNo = "123456-789", Status = "O4R" }; var updatedRepoAccount = new RepoAccount() { AccountNo = "123456-789", SubStatus = SkipPaidChecker.RepoSubStatusPaidSkip, Status = "O4R", Collaterals = new List(), RepoStatusChanges = new List() { new RepoStatusChange() { StatusFrom = "None", StatusTo = "O4R", ChangedDate = DateTime.Now.AddDays(-105) } } }; var slip = new RepoAccountProcessingSlip() { ExistingRepoAccount = originalRepoAccount, UpdatedRepoAccount = updatedRepoAccount }; var result = checker.CheckForAlert(slip); Assert.Equal(updatedRepoAccount.SubStatus, updatedRepoAccount.Status); Assert.NotNull(result); } [Fact] public void DoNotThrowOnNull() { var checker = new SkipPaidChecker(); // 106, 15 var originalRepoAccount = new RepoAccount() { AccountNo = "123456-789", Status = "O4R" }; var slip = new RepoAccountProcessingSlip() { ExistingRepoAccount = originalRepoAccount, UpdatedRepoAccount = null }; var result = checker.CheckForAlert(slip); Assert.Null(result); } } }