public void TestReduceMoneyDifferentCurrency() { Bank bank = new Bank(); bank.AddRate("CHF", "USD", 2); Money result = bank.Reduce(Money.CreateFranc(2), "USD"); Assert.AreEqual(Money.CreateDollar(1), result); }
public void TestMixedAddition() { Expression fiveDollars = Money.CreateDollar(5); Expression tenFrancs = Money.CreateFranc(10); Bank bank = new Bank(); bank.AddRate("CHF", "USD", 2); Money result = bank.Reduce(fiveDollars.Plus(tenFrancs), "USD"); Assert.AreEqual(Money.CreateDollar(10), result); }
public void TestSimpleAddition() { Money five = Money.CreateDollar(5); Expression sum = five.Plus(five); Bank bank = new Bank(); Money reduced = bank.Reduce(sum, "USD"); Assert.AreEqual(Money.CreateDollar(10), reduced); }
public void TestReduceSum() { Expression sum = new Sum(Money.CreateDollar(3), Money.CreateDollar(4)); Bank bank = new Bank(); Money result = bank.Reduce(sum, "USD"); Assert.AreEqual(Money.CreateDollar(7), result); }
public void TestReduceMoney() { Bank bank = new Bank(); Money result = bank.Reduce(Money.CreateDollar(1), "USD"); Assert.AreEqual(Money.CreateDollar(1), result); }
public void TestSumTimes() { Expression fiveDollars = Money.CreateDollar(5); Expression tenFrancs = Money.CreateFranc(10); Bank bank = new Bank(); bank.AddRate("CHF", "USD", 2); Expression sum = new Sum(fiveDollars, tenFrancs).Times(2); Money result = bank.Reduce(sum, "USD"); Assert.AreEqual(Money.CreateDollar(20), result); }