public void CloseAccount() { Currency currency = new Currency() { UseCents = false, Code = "SOM", Id = 1, IsPivot = true, Name = "SOM" }; CompulsorySavingsProduct product = new CompulsorySavingsProduct(); product.Currency = currency; CompulsorySavings saving = new CompulsorySavings(ApplicationSettings.GetInstance(""), ChartOfAccounts.GetInstance(new User()), new User(), 1000, new DateTime(2009, 01, 01), null) { InterestRate = 0.01, Product = product }; List <SavingEvent> events = saving.Close(new DateTime(2009, 02, 26), new User() { Id = 1 }, "Close savings contract", false); int accrualEvents = saving.Events.FindAll(item => item is SavingInterestsAccrualEvent).Count; int postingEvents = saving.Events.FindAll(item => item is SavingInterestsPostingEvent).Count; Assert.AreEqual(events.Count, 58); Assert.AreEqual(accrualEvents, 56); Assert.AreEqual(postingEvents, 1); Assert.AreEqual(saving.ChartOfAccounts.GetAccountByNumber(OAccounts.ACCOUNT_PAYABLE_INTERESTS_ON_COMPULSORY_SAVINGS, 1).Balance.Value, 0); Assert.AreEqual(saving.ChartOfAccounts.GetAccountByNumber(OAccounts.COMPULSORY_SAVINGS, 1).Balance.Value, 1560); Assert.AreEqual(saving.ChartOfAccounts.GetAccountByNumber(OAccounts.CASH, 1).Balance.Value, 1000); Assert.AreEqual(saving.ChartOfAccounts.GetAccountByNumber(OAccounts.INTERESTS_ON_DEPOSIT_ACCOUNT, 1).Balance.Value, 560); Assert.AreEqual(saving.GetBalance(), 1560); Assert.AreEqual(saving.Status, OSavingsStatus.Closed); }
public void CloseAccount() { Currency currency = new Currency() { UseCents = false, Code = "SOM", Id = 1, IsPivot = true, Name = "SOM" }; CompulsorySavingsProduct product = new CompulsorySavingsProduct(); product.Currency = currency; CompulsorySavings saving = new CompulsorySavings(ApplicationSettings.GetInstance(""), ChartOfAccounts.GetInstance(new User()), new User(), 1000, new DateTime(2009, 01, 01), null) { InterestRate = 0.01, Product = product }; List<SavingEvent> events = saving.Close(new DateTime(2009, 02, 26), new User() { Id = 1 }, "Close savings contract", false); int accrualEvents = saving.Events.FindAll(item => item is SavingInterestsAccrualEvent).Count; int postingEvents = saving.Events.FindAll(item => item is SavingInterestsPostingEvent).Count; Assert.AreEqual(events.Count, 58); Assert.AreEqual(accrualEvents, 56); Assert.AreEqual(postingEvents, 1); Assert.AreEqual(saving.ChartOfAccounts.GetAccountByNumber(OAccounts.ACCOUNT_PAYABLE_INTERESTS_ON_COMPULSORY_SAVINGS, 1).Balance.Value, 0); Assert.AreEqual(saving.ChartOfAccounts.GetAccountByNumber(OAccounts.COMPULSORY_SAVINGS, 1).Balance.Value, 1560); Assert.AreEqual(saving.ChartOfAccounts.GetAccountByNumber(OAccounts.CASH, 1).Balance.Value, 1000); Assert.AreEqual(saving.ChartOfAccounts.GetAccountByNumber(OAccounts.INTERESTS_ON_DEPOSIT_ACCOUNT, 1).Balance.Value, 560); Assert.AreEqual(saving.GetBalance(), 1560); Assert.AreEqual(saving.Status, OSavingsStatus.Closed); }