public async Task CreateCurrencyAsync_NonExistingCurrency_ReturnCreatedCurrency() { var currencyName = "EUR"; Currency nonExistingCurrency = null; _unitOfWork.Setup(u => u.Currencies.SingleOrDefaultAsync(It.IsAny <Expression <Func <Currency, bool> > >())) .ReturnsAsync(nonExistingCurrency); var result = await _currencyService.CreateCurrencyAsync(currencyName); Assert.Equal(currencyName, result.Name); }
public void DeleteAndCreateCurrencyTest() { var newCurrency = new Currency { BuyRate = 1, Code = "DKK", Description = "Danks krona", SellRate = 1000, Unit = 1, IsAutomatic = false, }; var request = new CurrencyListRequest(this.connectionSettings.AccessToken, this.connectionSettings.ClientSecret); try { // delete, or we can't add CurrencyService.DeleteCurrencyAsync(request, newCurrency.Code).GetAwaiter().GetResult(); } catch { // nothing, the currency did not exist } finally { var createdCurrency = CurrencyService.CreateCurrencyAsync(request, newCurrency).GetAwaiter().GetResult(); Assert.IsNotNull(createdCurrency); Assert.AreEqual(newCurrency.Code, createdCurrency.Code); Assert.AreEqual(newCurrency.BuyRate, createdCurrency.BuyRate); Assert.AreEqual(newCurrency.Description, createdCurrency.Description); Assert.AreEqual(newCurrency.IsAutomatic, createdCurrency.IsAutomatic); Assert.AreEqual(newCurrency.SellRate, createdCurrency.SellRate); Assert.AreEqual(newCurrency.Unit, createdCurrency.Unit); Assert.AreEqual(null, createdCurrency.Url); } }