public async Task ConvertCurrencies_Test([Values(1.5)] double rateForUSD, [Values(20)] double rateForRUB) { var user = new User("Test"); currencyService.AddCurrencyToList(new Currency("EUR", 1)); currencyService.AddCurrencyToList(new Currency("USD", rateForUSD)); currencyService.AddCurrencyToList(new Currency("RUB", rateForRUB)); var currencyAccountRUB = new CurrencyAccount("RUB", 10000); await purserManager.AddAccountCurrencyForUser(user, currencyAccountRUB); await purserManager.ConvertCurrencies(user, "RUB", "USD", 2000); var expectedResult = (2000 / rateForRUB) * rateForUSD; var realResult = user.Purse.CurrencyAccounts.FirstOrDefault(x => x.CurrencyName.Equals("USD")); Assert.AreEqual(expectedResult, realResult.Value); }