public void List_ShouldReturn_CreatedTransfers() { Transfer createdTransfer1, createdTransfer2; IEnumerable <Transfer> queriedTransfers; using (var dataLayer = DataLayerHelper.CreateDataLayer()) using (var categoriesController = new CategoriesController(dataLayer)) using (var currenciesController = new CurrenciesController(dataLayer)) using (var partnersController = new PartnersController(dataLayer)) using (var transfersController = new TransfersController(dataLayer)) { var category = categoriesController.CreateCategory(TestDataProvider.CreateNewCategory()); var partner = partnersController.CreatePartner(TestDataProvider.CreateNewPartner()); var currency = currenciesController.CreateCurrency(TestDataProvider.CreateNewCurrency()); var newTransfer1 = TestDataProvider.CreateNewTransfer( category.Id, partner.Id, currency.Id, TestDataProvider.CreateNewTransferItem()); createdTransfer1 = transfersController.CreateTransfer(newTransfer1); var newTransfer2 = TestDataProvider.CreateNewTransfer( category.Id, partner.Id, currency.Id, TestDataProvider.CreateNewTransferItem()); createdTransfer2 = transfersController.CreateTransfer(newTransfer2); queriedTransfers = transfersController.List(); } AssertTransfersInList(queriedTransfers, createdTransfer1, createdTransfer2); }
public void Get_Normally_ShouldReturn_TransferWithId() { CreatedAtActionResult actionResult; Transfer createdTransfer, queriedTransfer; using (var dataLayer = DataLayerHelper.CreateDataLayer()) using (var categoriesController = new CategoriesController(dataLayer)) using (var currenciesController = new CurrenciesController(dataLayer)) using (var partnersController = new PartnersController(dataLayer)) using (var transfersController = new TransfersController(dataLayer)) { var category = categoriesController.CreateCategory(TestDataProvider.CreateNewCategory()); var partner = partnersController.CreatePartner(TestDataProvider.CreateAnotherNewPartner()); var currency = currenciesController.CreateCurrency(TestDataProvider.CreateNewCurrency()); var newTransfer = TestDataProvider.CreateNewTransfer( category.Id, partner.Id, currency.Id, TestDataProvider.CreateNewTransferItem()); actionResult = (CreatedAtActionResult)transfersController.Create(newTransfer); createdTransfer = (Transfer)actionResult.Value; queriedTransfer = transfersController.Get(createdTransfer.Id); } Assert.AreEqual(actionResult.ActionName, "Get"); Assert.IsTrue( queriedTransfer.IsEqualTo(createdTransfer), "The two transfers should be equal. " + $"Expected: {createdTransfer.Stringify()}, actual: {queriedTransfer.Stringify()}."); }
public void Create_WhenRecordExists_ShouldThrow() { using (var dataLayer = DataLayerHelper.CreateDataLayer()) using (var controller = new CurrenciesController(dataLayer)) { var newCurrency = TestDataProvider.CreateNewCurrency(); controller.Create(newCurrency); controller.Create(newCurrency); } }
public void List_ShouldReturn_CreatedCurrencies() { Currency queriedCurrency1, queriedCurrency2; IEnumerable <Currency> queriedCurrencies; using (var dataLayer = DataLayerHelper.CreateDataLayer()) using (var controller = new CurrenciesController(dataLayer)) { queriedCurrency1 = controller.CreateCurrency(TestDataProvider.CreateNewCurrency()); queriedCurrency2 = controller.CreateCurrency(TestDataProvider.CreateAnotherNewCurrency()); queriedCurrencies = controller.List(); } AssertCurrenciesInList(queriedCurrencies, queriedCurrency1, queriedCurrency2); }
public void Update_Normally_ShouldWork() { Currency createdCurrency, updatedCurrency; using (var dataLayer = DataLayerHelper.CreateDataLayer()) using (var controller = new CurrenciesController(dataLayer)) { createdCurrency = controller.CreateCurrency(TestDataProvider.CreateNewCurrency()); controller.Update(new CurrencyUpdate { Id = createdCurrency.Id, Code = "USD" }); updatedCurrency = controller.Get(createdCurrency.Id); } Assert.AreEqual("USD", updatedCurrency.Code); }
public void Get_Normally_ShouldReturn_CurrencyWithId() { Currency createdCurrency, queriedCurrency; using (var dataLayer = DataLayerHelper.CreateDataLayer()) using (var controller = new CurrenciesController(dataLayer)) { createdCurrency = controller.CreateCurrency(TestDataProvider.CreateNewCurrency()); queriedCurrency = controller.Get(createdCurrency.Id); } Assert.IsTrue( queriedCurrency.IsEqualTo(createdCurrency), "The two currencies should be equal. " + $"Expected: {createdCurrency.Stringify()}, actual: {queriedCurrency.Stringify()}."); }
public void Delete_Normally_ShouldWork() { Currency createdCurrency, queriedCurrency; IEnumerable <Currency> listedCurrencies; using (var dataLayer = DataLayerHelper.CreateDataLayer()) using (var controller = new CurrenciesController(dataLayer)) { createdCurrency = controller.CreateCurrency(TestDataProvider.CreateNewCurrency()); queriedCurrency = controller.Get(createdCurrency.Id); controller.Delete(createdCurrency.Id); listedCurrencies = controller.List(); } Assert.AreEqual(createdCurrency.Id, queriedCurrency.Id, "Unexpected ID."); Assert.AreEqual(false, listedCurrencies.Any(), "There should be no partners returned."); }
public void Create_Normally_ShouldReturn_Currency() { var newCurrency = TestDataProvider.CreateNewCurrency(); CreatedAtActionResult actionResult; Currency currency; using (var dataLayer = DataLayerHelper.CreateDataLayer()) using (var controller = new CurrenciesController(dataLayer)) { actionResult = (CreatedAtActionResult)controller.Create(newCurrency); currency = (Currency)actionResult.Value; } Assert.AreEqual(actionResult.ActionName, "Get"); Assert.IsTrue( currency.Id > 0, $"Currency ID is expected to greater than 0. Actual: {currency.Id}."); Assert.AreEqual( newCurrency.Code, currency.Code, $"Invalid currency code. Expected: \"{newCurrency.Code}\", actual: \"{currency.Code}\"."); }