Пример #1
0
        public async void Detail_GetCurrentItem(int?id)
        {
            // Arrange

            var mockRepo     = new Mock <IAsyncRepository <Income> >();
            var mockMediator = new Mock <IMediator>();

            mockRepo.Setup(repo => repo.GetByIdAsync(id)).ReturnsAsync(GetIncomes().Find(i => i.IncomeId == id));

            mockMediator
            .Setup(m => m.Send(It.IsAny <GetIncomeDetail>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(new IncomeDetailViewModel()
            {
                Income = GetIncomes().Find(i => i.IncomeId == id)
            })
            .Verifiable();

            var controller = new IncomesController(mockRepo.Object, mockMediator.Object);

            // Act

            var result = await controller.Details(id);

            // Assert

            var viewResult = Assert.IsType <ViewResult>(result);
            var model      = Assert.IsAssignableFrom <IncomeDetailViewModel>(viewResult.Model);

            Assert.Equal(id, model.Income.IncomeId);
        }
Пример #2
0
        public async void Index_GetAllItems()
        {
            // Arrange

            var mockRepo     = new Mock <IAsyncRepository <Income> >();
            var mockMediator = new Mock <IMediator>();

            mockRepo.Setup(repo => repo.GetAllAsync()).ReturnsAsync(GetIncomes());

            var controller = new IncomesController(mockRepo.Object, mockMediator.Object);

            // Act

            var result = await controller.Index();

            // Assert

            var viewResult = Assert.IsType <ViewResult>(result);
            var model      = Assert.IsAssignableFrom <IEnumerable <Income> >(viewResult.Model);

            Assert.Equal(GetIncomes().Count, model.Count());
        }
Пример #3
0
        public void Setup()
        {
            SetupDB();
            Guid userGuidID = new Guid();

            databaseContext.Users.Add(NewUser);
            databaseContext.SaveChanges();

            var userClaimsTypes = new ClaimsPrincipal(new ClaimsIdentity(new Claim[]
            {
                new Claim(ClaimTypes.NameIdentifier, userGuidID.ToString()),
            }, "mock"));

            AccountsControl = new AccountsController(databaseContext);
            IncomesControl  = new IncomesController(databaseContext);
            ExpensesControl = new ExpensesController(databaseContext);

            AccountsControl.ControllerContext = new ControllerContext()
            {
                HttpContext = new DefaultHttpContext()
                {
                    User = userClaimsTypes
                }
            };
            IncomesControl.ControllerContext = new ControllerContext()
            {
                HttpContext = new DefaultHttpContext()
                {
                    User = userClaimsTypes
                }
            };
            ExpensesControl.ControllerContext = new ControllerContext()
            {
                HttpContext = new DefaultHttpContext()
                {
                    User = userClaimsTypes
                }
            };
        }