public async Task ConvertFromPrimaryExchangeRateCurrency_ReturnExpectedResult()
        {
            //set primary exchange rate
            _cacheManager.Setup(c => c.GetAsync <Currency>(It.IsAny <string>(), It.IsAny <Func <Task <Currency> > >())).Returns(Task.FromResult(currencyUSD));
            var result = await _currencyService.ConvertFromPrimaryExchangeRateCurrency(100, currencyEUR);

            Assert.AreEqual(100, result);
            currencyEUR.Rate = 2;
            Assert.AreEqual(200, await _currencyService.ConvertFromPrimaryExchangeRateCurrency(100, currencyEUR));
        }
 /// <summary>
 /// Converts from primary exchange rate currency
 /// </summary>
 /// <param name="amount">Amount</param>
 /// <param name="targetCurrencyCode">Target currency code</param>
 /// <returns>Converted value</returns>
 public decimal ConvertFromPrimaryExchangeRateCurrency(decimal amount, Currency targetCurrencyCode)
 {
     return(_currencyService.ConvertFromPrimaryExchangeRateCurrency(amount, targetCurrencyCode));
 }