public void InitSubject() { _as20110519 = new TabulatedExchangeRateProvider(); _as20110519.MultiAdd(CurrencyIsoCode.USD, CurrencyIsoCode.EUR, 0.70155m); _as20110519.MultiAdd(CurrencyIsoCode.USD, CurrencyIsoCode.GBP, 0.61860m); _as20110519.MultiAdd(CurrencyIsoCode.GBP, CurrencyIsoCode.EUR, 1.13409m); }
public void MultiAdd_ExistingInverseRates_AreOverwritten() { var subject = new TabulatedExchangeRateProvider(); subject.Add(CurrencyIsoCode.AFN, CurrencyIsoCode.AED, 1.5m); subject.MultiAdd(CurrencyIsoCode.AED, CurrencyIsoCode.AFN, 2m); ExchangeRate overwritten = subject.Get(CurrencyIsoCode.AFN, CurrencyIsoCode.AED); Assert.That(overwritten.Rate, Is.EqualTo(.5m)); }
public void MultiAdd_IdentityRatesForQuoteCurrency_Added() { var subject = new TabulatedExchangeRateProvider(); subject.MultiAdd(CurrencyIsoCode.AED, CurrencyIsoCode.AFN, 1.5m); var identity = subject.Get(CurrencyIsoCode.AFN, CurrencyIsoCode.AFN); Assert.That(identity.From, Is.EqualTo(CurrencyIsoCode.AFN)); Assert.That(identity.To, Is.EqualTo(CurrencyIsoCode.AFN)); Assert.That(identity.Rate, Is.EqualTo(1m)); }
public void MultiAdd_InverseRate_Added() { var subject = new TabulatedExchangeRateProvider(); subject.MultiAdd(CurrencyIsoCode.AED, CurrencyIsoCode.AFN, 1.5m); var inverse = subject.Get(CurrencyIsoCode.AFN, CurrencyIsoCode.AED); Assert.That(inverse.From, Is.EqualTo(CurrencyIsoCode.AFN)); Assert.That(inverse.To, Is.EqualTo(CurrencyIsoCode.AED)); Assert.That(inverse.Rate, Is.EqualTo(0.66m).Within(0.0067m)); }