Ejemplo n.º 1
0
 public virtual void InsertCoin(Coin coin)
 {
     if (!coin.IsAccepted)
     {
         ReturnedCoins.Add(coin);
     }
     else
     {
         InsertedCoins.Add(coin);
     }
 }
Ejemplo n.º 2
0
        public override void InsertCoins(IEnumerable <Coin> coins)
        {
            InsertedCoins.AddRange(coins);

            var productCost = PricesProvider.GetPrice(SelectedProduct);
            var diff        = productCost - InsertedCoins.Sum(x => (int)x);

            if (diff > 0)
            {
                throw new NotSufficientAmountException("Insufficient amount!", string.Format("{0:N2} Euro", (decimal)diff / 100));
            }
            VendingMachine.State = new ReadyToProcessOrder(this);
        }
Ejemplo n.º 3
0
 public int GetCurrentBalance()
 {
     return(InsertedCoins.Select(x => x.Value).Sum());
 }
Ejemplo n.º 4
0
 public void InsertCoin(Coin coin)
 {
     InsertedCoins.Add(coin);
     TotalValue += coin.Value;
     Display     = $"${TotalValue.ToString("0.00")}";
 }