コード例 #1
0
        public async Task Test_GetBudgetTypeByUserId_Success()
        {
            _budgetBreakdownRepository.Setup(b => b.GetBudgetTypeByUserId(It.IsAny <long>()))
            .ReturnsAsync("string");

            var breakdownServices = new BudgetBreakdownServices(_budgetBreakdownRepository.Object);
            await breakdownServices.GetBudgetTypeByUserId(1);

            _budgetBreakdownRepository.Verify(b => b.GetBudgetTypeByUserId(It.IsAny <long>()), Times.Once);
        }
コード例 #2
0
        public void Test_GetBudgetBreakdownByUser_Fail_ArgumentException()
        {
            _budgetBreakdownRepository.Setup(b => b.GetBudgetBreakdownByUserId(It.IsAny <long>()))
            .ReturnsAsync(new BudgetBreakdown());

            var breakdownServices = new BudgetBreakdownServices(_budgetBreakdownRepository.Object);

            Assert.ThrowsAsync <ArgumentException>(() => breakdownServices.GetBudgetBreakdownByUser(0));

            _budgetBreakdownRepository.Verify(b => b.GetBudgetBreakdownByUserId(It.IsAny <long>()), Times.Never);
        }
コード例 #3
0
        public void Test_AddNewBudgetBreakdown_Fail_ArgumentException()
        {
            _budgetBreakdownRepository.Setup(b => b.AddNewBudgetBreakdownByUserId(It.IsAny <BudgetBreakdown>()))
            .Returns(Task.CompletedTask);

            var budgetBreakdownServices = new BudgetBreakdownServices(_budgetBreakdownRepository.Object);

            Assert.ThrowsAsync <ArgumentException>(() => budgetBreakdownServices.AddNewBudgetBreakdownByUserId(null));

            _budgetBreakdownRepository.Verify(b => b.AddNewBudgetBreakdownByUserId(It.IsAny <BudgetBreakdown>()), Times.Never);
        }
コード例 #4
0
        public void Test_GetBudgetTypeByUserId_Fail_Exception()
        {
            _budgetBreakdownRepository.Setup(b => b.GetBudgetTypeByUserId(It.IsAny <long>()))
            .Throws <Exception>();

            var breakdownServices = new BudgetBreakdownServices(_budgetBreakdownRepository.Object);

            Assert.ThrowsAsync <Exception>(() => breakdownServices.GetBudgetTypeByUserId(1));

            _budgetBreakdownRepository.Verify(b => b.GetBudgetTypeByUserId(It.IsAny <long>()), Times.Once);
        }
コード例 #5
0
        public async Task Test_RemoveBudgetBreakdownByUserId_Success()
        {
            _budgetBreakdownRepository.Setup(b => b.GetBudgetBreakdownByUserId(It.IsAny <long>()))
            .ReturnsAsync(new BudgetBreakdown());
            _budgetBreakdownRepository.Setup(b => b.RemoveBudgetBreakdownByUserId(It.IsAny <long>()))
            .Returns(Task.CompletedTask);

            var breakdownServices = new BudgetBreakdownServices(_budgetBreakdownRepository.Object);
            await breakdownServices.RemoveBudgetBreakdownByUserId(1);

            _budgetBreakdownRepository.Verify(b => b.RemoveBudgetBreakdownByUserId(It.IsAny <long>()), Times.Once);
        }
コード例 #6
0
        public void Test_AddNewBudgetBreakdown_Fail_Exception()
        {
            _budgetBreakdownRepository.Setup(b => b.AddNewBudgetBreakdownByUserId(It.IsAny <BudgetBreakdown>()))
            .Throws <Exception>();
            var budgetBreakdownServices = new BudgetBreakdownServices(_budgetBreakdownRepository.Object);

            Assert.ThrowsAsync <Exception>(() => budgetBreakdownServices.AddNewBudgetBreakdownByUserId(new BudgetBreakdownModel()
            {
                UserId            = 1,
                BudgetType        = "zbb",
                ExpensesBreakdown = .25m,
                SavingsBreakdown  = .25m,
            }));

            _budgetBreakdownRepository.Verify(b => b.AddNewBudgetBreakdownByUserId(It.IsAny <BudgetBreakdown>()), Times.Once);
        }
コード例 #7
0
        public async Task Test_AddNewBudgetBreakdown_Success()
        {
            _budgetBreakdownRepository.Setup(b => b.AddNewBudgetBreakdownByUserId(It.IsAny <BudgetBreakdown>()))
            .Returns(Task.CompletedTask);

            var budgetBreakdownServices = new BudgetBreakdownServices(_budgetBreakdownRepository.Object);

            await budgetBreakdownServices.AddNewBudgetBreakdownByUserId(new BudgetBreakdownModel()
            {
                UserId            = 1,
                BudgetType        = "zbb",
                ExpensesBreakdown = .25m,
                SavingsBreakdown  = .25m,
            });

            _budgetBreakdownRepository.Verify(b => b.AddNewBudgetBreakdownByUserId(It.IsAny <BudgetBreakdown>()), Times.Once);
        }
コード例 #8
0
        public void Test_UpdateBudgetBreakdownByUserId_Fail_Exception_UserIdsDontMatch()
        {
            _budgetBreakdownRepository.Setup(b => b.GetBudgetBreakdownByUserId(It.IsAny <long>()))
            .ReturnsAsync(new BudgetBreakdown());
            _budgetBreakdownRepository.Setup(b => b.UpdateBudgetBreakdownByUserId(It.IsAny <BudgetBreakdown>()))
            .Returns(Task.CompletedTask);

            var breakdownServices = new BudgetBreakdownServices(_budgetBreakdownRepository.Object);

            Assert.ThrowsAsync <Exception>(() => breakdownServices.UpdateBudgetBreakdownByUserId(new BudgetBreakdownModel()
            {
                Id                = 1,
                UserId            = 18,
                BudgetType        = "zbb",
                ExpensesBreakdown = .35m,
                SavingsBreakdown  = .15m
            }));

            _budgetBreakdownRepository.Verify(b => b.UpdateBudgetBreakdownByUserId(It.IsAny <BudgetBreakdown>()), Times.Never);
        }
コード例 #9
0
        public async Task Test_UpdateBudgetBreakdownByUserId_Success()
        {
            _budgetBreakdownRepository.Setup(b => b.GetBudgetBreakdownByUserId(It.IsAny <long>()))
            .ReturnsAsync(new BudgetBreakdown()
            {
                Id     = 5,
                UserId = 22
            });
            _budgetBreakdownRepository.Setup(b => b.UpdateBudgetBreakdownByUserId(It.IsAny <BudgetBreakdown>()))
            .Returns(Task.CompletedTask);

            var breakdownServices = new BudgetBreakdownServices(_budgetBreakdownRepository.Object);
            await breakdownServices.UpdateBudgetBreakdownByUserId(new BudgetBreakdownModel()
            {
                Id                = 5,
                UserId            = 22,
                BudgetType        = "zbb",
                ExpensesBreakdown = .35m,
                SavingsBreakdown  = .15m
            });

            _budgetBreakdownRepository.Verify(b => b.UpdateBudgetBreakdownByUserId(It.IsAny <BudgetBreakdown>()), Times.Once);
        }