Пример #1
0
        public async Task GetOne_WhenAuthenticatedUserRequestsPage_ThenADetailViewResultWithEmployeesReturned()
        {
            _mockAuthService
            .Setup(a => a.IsAuthenticated(_user))
            .Returns(true);
            _mockRepository
            .Setup(r => r.ReadAsync(1))
            .ReturnsAsync(EmployeeProvider.GetOneTestEmployee());

            var controller = new EmployeeController(_mockAuthService.Object, _mockRepository.Object, _mockService.Object);

            controller.ControllerContext = new ControllerContext()
            {
                HttpContext = new DefaultHttpContext()
                {
                    User = _user
                }
            };

            var actual = await controller.GetOne(1) as ViewResult;

            var actualModel = actual.Model as Employee;

            Assert.IsNotNull(actual);
            Assert.IsInstanceOf <ViewResult>(actual);
            Assert.That("Detail", Is.EqualTo(actual.ViewName));
            Assert.That("Alice", Is.EqualTo(actualModel.Forename));
        }
Пример #2
0
        public async Task GetOne_WhenUnAuthenticatedRequestReceived_ThenRedirectToSignInViewActionReturned()
        {
            _mockAuthService
            .Setup(a => a.IsAuthenticated(_user))
            .Returns(false);
            _mockRepository
            .Setup(r => r.ReadAsync(1))
            .ReturnsAsync(EmployeeProvider.GetOneTestEmployee());

            var controller = new EmployeeController(_mockAuthService.Object, _mockRepository.Object, _mockService.Object);

            var actual = await controller.GetOne(1) as RedirectToActionResult;

            Assert.IsNotNull(actual);
            Assert.IsTrue(actual.ActionName == "SignIn");
            Assert.IsTrue(actual.ControllerName == "Authentication");
        }
Пример #3
0
        public void SetUp()
        {
            _employeeStub = new List <Employee>();
            _employeeStub.Add(EmployeeProvider.GetOneTestEmployee());
            _employeesStub = EmployeeProvider.GetAllTestEmployees();

            _mockAuthService = new Mock <IAuthenticationService>();
            _mockRepository  = new Mock <IEmployeeRepository>();
            _mockService     = new Mock <IPaginationService>();

            _mockService
            .Setup(s => s.Page)
            .Returns(1);
            _mockService
            .Setup(s => s.PageSize)
            .Returns(10);

            _user = new ClaimsPrincipal(new ClaimsIdentity(new Claim[]
            {
                new Claim(ClaimTypes.Name, "Alice"),
                new Claim(ClaimTypes.NameIdentifier, "1"),
            }, "mock"));
        }