Пример #1
0
        public List <Denomination> ProcessWithdrawal(double requireAmount)
        {
            var defauklProcess = new ProcessWithdrawal();
            var den            = defauklProcess.WithdrawMoney(requireAmount);

            return(den);
        }
Пример #2
0
        public void WithdrawZeroMoneyTest()
        {
            var defauklProcess = new ProcessWithdrawal();
            var den            = defauklProcess.WithdrawMoney(0d);

            Assert.AreEqual(0, den.Count);

            Assert.AreEqual(0, den.Sum(x => x.Quantity * x.Value));
        }
Пример #3
0
        public void WithdrawMoneyMaxTest()
        {
            var defauklProcess = new ProcessWithdrawal();
            var den            = defauklProcess.WithdrawMoney(4638d);

            Assert.AreEqual(12, den.Count);

            Assert.AreEqual(4638d, den.Sum(x => x.Quantity * x.Value));

            IDenominationLogic logic = new DenominationLogic();
            var denominations        = logic.GetDenominationValue();

            // no money left
            Assert.AreEqual(0, denominations.Sum(x => x.Quantity * x.Value));
        }