Пример #1
0
        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);
        }
Пример #2
0
        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}\".");
        }