Esempio n. 1
0
        public void RemoveCoinTest()
        {
            //Arrange
            int coinCountOrig, coinCountAfterPenny, coinCountAfterFiveMorePennies;
            int numPennies = 5;


            Double valueOrig, valueAfterPenny, valueAfterFiveMorePennies;
            Double valueAfterNickel, valueAfterDime, valueAfterQuarter, valueAfterDollar;

            repo = new CurrencyRepo();  //reset repo

            //add some coins
            repo.AddCoin(penny);

            for (int i = 0; i < numPennies; i++)
            {
                repo.AddCoin(penny);
            }
            repo.AddCoin(nickel);
            repo.AddCoin(dime);
            repo.AddCoin(quarter);
            repo.AddCoin(dollarCoin);

            //Act
            coinCountOrig = repo.GetCoinCount();
            valueOrig     = repo.TotalValue();
            repo.RemoveCoin(penny);
            coinCountAfterPenny = repo.GetCoinCount();
            valueAfterPenny     = repo.TotalValue();

            for (int i = 0; i < numPennies; i++)
            {
                repo.RemoveCoin(penny);
            }
            coinCountAfterFiveMorePennies = repo.GetCoinCount();
            valueAfterFiveMorePennies     = repo.TotalValue();

            repo.RemoveCoin(nickel);
            valueAfterNickel = repo.TotalValue();
            repo.RemoveCoin(dime);
            valueAfterDime = repo.TotalValue();
            repo.RemoveCoin(quarter);
            valueAfterQuarter = repo.TotalValue();
            repo.RemoveCoin(dollarCoin);
            valueAfterDollar = repo.TotalValue();


            //Assert
            Assert.AreEqual(coinCountOrig - 1, coinCountAfterPenny);
            Assert.AreEqual(coinCountAfterPenny - numPennies, coinCountAfterFiveMorePennies);

            Assert.AreEqual(valueOrig - penny.MonetaryValue, valueAfterPenny);
            Assert.AreEqual(valueAfterPenny - (numPennies * penny.MonetaryValue), valueAfterFiveMorePennies);

            //Assert.AreEqual(valueAfterFiveMorePennies - nickel.MonetaryValue, valueAfterNickel); //HUH? 1.35 != 1.35 both are double?
            Assert.AreEqual(valueAfterNickel - dime.MonetaryValue, valueAfterDime);
            Assert.AreEqual(valueAfterDime - quarter.MonetaryValue, valueAfterQuarter);
            Assert.AreEqual(valueAfterQuarter - dollarCoin.MonetaryValue, valueAfterDollar);
        }
        private void ButtonClear_Click(object sender, RoutedEventArgs e)
        {
            repo = new CurrencyRepo();

            ViewModelRepo    = new ViewModelCreateCurrencyRepo(repo);
            this.DataContext = ViewModelRepo;
            string value = Convert.ToString(repo.TotalValue());

            labelRepoValueDisplay.Content = "$" + value;
        }
        private void ButtonAddCoin_Click(object sender, RoutedEventArgs e)
        {
            Coin tempC = new Penny();

            switch (CoinList.SelectionBoxItem)
            {
            case "Penny":
            {
                tempC = new Penny();
                break;
            }

            case "Nickel":
            {
                tempC = new Nickel();
                break;
            }

            case "Dime":
            {
                tempC = new Dime();
                break;
            }

            case "Quarter":
            {
                tempC = new Quarter();
                break;
            }

            case "Half Dollar":
            {
                tempC = new HalfDollar();
                break;
            }

            case "Dollar Coin":
            {
                tempC = new DollarCoin();
                break;
            }
            }

            repo.AddCoin(tempC);


            ViewModelRepo    = new ViewModelCreateCurrencyRepo(repo);
            this.DataContext = ViewModelRepo;

            string value = Convert.ToString(repo.TotalValue());

            labelRepoValueDisplay.Content = "$" + value;
        }
Esempio n. 4
0
 //constructor
 public CurrencyExchangeWPF(CurrencyRepo change)
 {
     //set the repo object to passed in repo
     repo = change;
     //intialize the commands
     GetChange = new WPFExchangeCommand(ExecuteCommandGetChange, CanExecuteCommandGetChange);
     Save      = new WPFExchangeCommand(ExecuteCommandSave, CanExecuteCommandSave);
     //if the repo has already been edited then update the view
     if (repo.Coins.Count > 0)
     {
         Amount = repo.TotalValue();
         RaisePropertyChanged("Amount");
         RaisePropertyChanged("Coins");
     }
 }
 private void ButtonLoad_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         repo             = repo.LoadRepo();
         ViewModelRepo    = new ViewModelCreateCurrencyRepo(repo.LoadRepo());
         this.DataContext = ViewModelRepo;
         string value = Convert.ToString(repo.TotalValue());
         labelRepoValueDisplay.Content = "$" + value;
     }
     catch (Exception w)
     {
         // Failed to load
     }
 }
Esempio n. 6
0
        public void AddCoinTest()
        {
            //Arrange
            int coinCountOrig, coinCountAfterPenny, coinCountAfterFiveMorePennies;
            int numPennies = 5;


            Double valueOrig, valueAfterPenny, valueAfterFiveMorePennies;
            Double valueAfterNickel, valueAfterDime, valueAfterQuarter, valueAfterDollar;

            //Act
            coinCountOrig = repo.GetCoinCount();
            valueOrig     = repo.TotalValue();

            repo.AddCoin(penny);
            coinCountAfterPenny = repo.GetCoinCount();
            valueAfterPenny     = repo.TotalValue();

            for (int i = 0; i < numPennies; i++)
            {
                repo.AddCoin(penny);
            }
            coinCountAfterFiveMorePennies = repo.GetCoinCount();
            valueAfterFiveMorePennies     = repo.TotalValue();

            repo.AddCoin(nickel);
            valueAfterNickel = repo.TotalValue();
            repo.AddCoin(dime);
            valueAfterDime = repo.TotalValue();
            repo.AddCoin(quarter);
            valueAfterQuarter = repo.TotalValue();
            repo.AddCoin(dollarCoin);
            valueAfterDollar = repo.TotalValue();


            //Assert
            Assert.AreEqual(coinCountOrig + 1, coinCountAfterPenny);
            Assert.AreEqual(coinCountAfterPenny + numPennies, coinCountAfterFiveMorePennies);

            Assert.AreEqual(valueOrig + penny.MonetaryValue, valueAfterPenny);
            Assert.AreEqual(valueAfterPenny + (numPennies * penny.MonetaryValue), valueAfterFiveMorePennies);

            Assert.AreEqual(valueAfterFiveMorePennies + nickel.MonetaryValue, valueAfterNickel);
            Assert.AreEqual(valueAfterNickel + dime.MonetaryValue, valueAfterDime);
            Assert.AreEqual(valueAfterDime + quarter.MonetaryValue, valueAfterQuarter);
            Assert.AreEqual(valueAfterQuarter + dollarCoin.MonetaryValue, valueAfterDollar);
        }