Exemple #1
0
        public void GetExpenses_oneValidExpense_Ok()
        {
            var repoExpense1 = new Domain.Expense
            {
                Amount      = 100,
                Category    = "grocery",
                ExpneseDate = new DateTime(2016, 11, 15),
                ID          = 1,
                Merchant    = "pns"
            };
            var repoExpenses = new List <Domain.Expense>()
            {
                repoExpense1
            };
            var repo = new Moq.Mock <IExpenseRepository>();

            repo.Setup <List <Expense> >(t => t.GetAllExpenses())
            .Returns(repoExpenses);

            var fac = new Moq.Mock <ITransactionFactory>();

            fac.Setup <DisplayExpensesTransaction>(m => m.CreateDisplayExpensesTransaction())
            .Returns(new DisplayExpensesTransaction(repo.Object));

            var sut = new ExpensesController(fac.Object, _logger.Object);

            //act
            var actualResponse = sut.Get();
            var contentResult  = actualResponse as OkNegotiatedContentResult <IEnumerable <ViewModels.Expense> >;

            //assert
            Assert.IsNotNull(contentResult, "Ok-200 status was not returned");
            Assert.IsNotNull(contentResult.Content, "No content was returned");
        }
Exemple #2
0
        //[TestMethod]
        public void GetById()
        {
            ExpensesController expensesController = new ExpensesController();
            string             actualResponse     = expensesController.Get(5);
            string             expectedResponse   = "expense";

            Assert.AreEqual(expectedResponse, actualResponse);
        }
Exemple #3
0
        //[TestMethod]
        public void Get()
        {
            ExpensesController   expensesController = new ExpensesController();
            IEnumerable <string> actualResponse     = expensesController.Get();
            List <string>        expectedResponse   = new List <string>();

            expectedResponse.Add("expense1");
            expectedResponse.Add("expense2");
            CollectionAssert.AreEqual(expectedResponse, actualResponse.ToList <string>());
        }
Exemple #4
0
        public void GetExpenses_nullRepoObject_InternalServerError()
        {
            var fac = new Moq.Mock <ITransactionFactory>();

            fac.Setup <DisplayExpensesTransaction>(m => m.CreateDisplayExpensesTransaction())
            .Throws(new Exception("Server Exception"));

            var sut = new ExpensesController(fac.Object, _logger.Object);

            //act
            var actualResponse = sut.Get();
            var contentResult  = actualResponse as InternalServerErrorResult;

            //assert
            Assert.IsNotNull(contentResult, "Ok-500 status was not returned");
            _logger.Verify(m => m.ErrorLog(Moq.It.IsAny <string>(), Moq.It.IsAny <Exception>()), Moq.Times.Exactly(1));
        }
Exemple #5
0
        public async Task ExpensesController_Get_Test()
        {
            bool called                        = false;
            var  expenseRepository             = new Data.Repositories.Fakes.StubIExpenseRepository();
            var  notificationChannelRepository = new Data.Repositories.Fakes.StubINotificationChannelRepository();
            var  notificationService           = new Services.Fakes.StubINotificationService();

            expenseRepository.GetAllUserInfoAsyncInt32PictureType = (id, picture) =>
            {
                called = true;
                return(Task.FromResult(new Expense()));
            };

            var target = new ExpensesController(expenseRepository, new SecurityHelper(), notificationChannelRepository, notificationService);
            var result = await target.Get(0, PictureType.Small);

            Assert.IsNotNull(result);
            Assert.IsTrue(called);
        }
Exemple #6
0
        public void GetExpenses_repositoryException_BadData()
        {
            var repo = new Moq.Mock <IExpenseRepository>();

            repo.Setup <List <Domain.Expense> >(t => t.GetAllExpenses())
            .Throws(new Exception("Database Exception"));

            var fac = new Moq.Mock <ITransactionFactory>();

            fac.Setup <DisplayExpensesTransaction>(m => m.CreateDisplayExpensesTransaction())
            .Returns(new DisplayExpensesTransaction(repo.Object));

            var sut = new ExpensesController(fac.Object, _logger.Object);

            //act
            var actualResponse = sut.Get();
            var contentResult  = actualResponse as BadRequestResult;

            //assert
            Assert.IsNotNull(contentResult, "Ok-400 status was not returned");
        }
Exemple #7
0
        public void GetExpenses_noValidExpense_Ok()
        {
            var repo = new Moq.Mock <IExpenseRepository>();

            repo.Setup <List <Expense> >(t => t.GetAllExpenses())
            .Returns(new List <Expense>());

            var fac = new Moq.Mock <ITransactionFactory>();

            fac.Setup <DisplayExpensesTransaction>(m => m.CreateDisplayExpensesTransaction())
            .Returns(new DisplayExpensesTransaction(repo.Object));

            var sut = new ExpensesController(fac.Object, _logger.Object);

            //act
            var actualResponse = sut.Get();
            var contentResult  = actualResponse as OkNegotiatedContentResult <IEnumerable <ViewModels.Expense> >;

            //assert
            Assert.IsNotNull(contentResult, "Ok-200 status was not returned" + actualResponse.GetType().Name);
            Assert.IsNotNull(contentResult.Content, "Empty content was not returned");
        }