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; }
//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 } }
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); }