Example #1
0
        private void ExecuteCommandGetChange(object parameter)
        {
            //Get the repo of the change created for amount given
            CurrencyRepo tempRepo = (CurrencyRepo)CurrencyRepo.CreateChange(Amount);

            //set the list of coins to the list of coins in the temp repo
            Coins = tempRepo.Coins;
            //notify the change in the list
            RaisePropertyChanged("Coins");
        }
 private void ButtonSubmit_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         repo             = (CurrencyRepo)CurrencyRepo.CreateChange(Convert.ToDouble(txtAmount.Text));
         ViewModelRepo    = new ViewModelCurrencyRepo(repo);
         this.DataContext = ViewModelRepo;
     }
     catch
     {
         txtAmount.Text = "Enter Amound Here! (Only Numberic Characters Allowed!)";
     }
 }
        public ActionResult Index(string sAmount, [FromServices] CurrencyRepo repo)
        {
            double dAmount;

            try
            {
                dAmount = Convert.ToDouble(sAmount);
            }
            catch
            {
                dAmount = 0;
            }
            repo.Coins = CurrencyRepo.CreateChange(dAmount).Coins;
            return(RedirectToAction(nameof(Index)));
        }
Example #4
0
        public void MakeChangeTests()
        {
            //Arrange
            CurrencyRepo changeOneQuatersOnHalfDollar, changeTwoDollars, changeOneDollarOneHalfDoller,
                         changeOneDimeOnePenny, changeOneNickelOnePenny, changeFourPennies;


            //Act
            changeTwoDollars             = (CurrencyRepo)CurrencyRepo.CreateChange(2.0m);
            changeOneDollarOneHalfDoller = (CurrencyRepo)CurrencyRepo.CreateChange(1.5m);
            changeOneQuatersOnHalfDollar = (CurrencyRepo)CurrencyRepo.CreateChange(.75m);

            changeOneDimeOnePenny   = (CurrencyRepo)CurrencyRepo.CreateChange(.11m);
            changeOneNickelOnePenny = (CurrencyRepo)CurrencyRepo.CreateChange(.06m);
            changeFourPennies       = (CurrencyRepo)CurrencyRepo.CreateChange(.04m);


            //Assert
            Assert.AreEqual(changeTwoDollars.Coins.Count, 2);
            Assert.AreEqual(changeTwoDollars.Coins[0].GetType(), new DollarCoin().GetType());
            Assert.AreEqual(changeTwoDollars.Coins[1].GetType(), new DollarCoin().GetType());

            Assert.AreEqual(changeOneDollarOneHalfDoller.Coins.Count, 2);
            Assert.AreEqual(changeOneDollarOneHalfDoller.Coins[0].GetType(), new DollarCoin().GetType());
            Assert.AreEqual(changeOneDollarOneHalfDoller.Coins[1].GetType(), new HalfDollar().GetType());


            Assert.AreEqual(changeOneQuatersOnHalfDollar.Coins.Count, 2);
            Assert.AreEqual(changeOneQuatersOnHalfDollar.Coins[0].GetType(), new HalfDollar().GetType());
            Assert.AreEqual(changeOneQuatersOnHalfDollar.Coins[1].GetType(), new Quarter().GetType());

            Assert.AreEqual(changeOneDimeOnePenny.Coins.Count, 2);
            Assert.AreEqual(changeOneDimeOnePenny.Coins[0].GetType(), new Dime().GetType());
            Assert.AreEqual(changeOneDimeOnePenny.Coins[1].GetType(), new Penny().GetType());

            Assert.AreEqual(changeOneNickelOnePenny.Coins.Count, 2);
            Assert.AreEqual(changeOneNickelOnePenny.Coins[0].GetType(), new Nickel().GetType());
            Assert.AreEqual(changeOneNickelOnePenny.Coins[1].GetType(), new Penny().GetType());


            Assert.AreEqual(changeFourPennies.Coins.Count, 4);
            Assert.AreEqual(changeFourPennies.Coins[0].GetType(), new Penny().GetType());
            Assert.AreEqual(changeFourPennies.Coins[1].GetType(), new Penny().GetType());
            Assert.AreEqual(changeFourPennies.Coins[2].GetType(), new Penny().GetType());
            Assert.AreEqual(changeFourPennies.Coins[3].GetType(), new Penny().GetType());
        }