Example #1
0
        public async void GetAdminUserStatusHandler_WithNonExternalUser_ThrowsSecurityException(AuthorizationBuilder.UserType userType)
        {
            // Arrange
            Guid userId = new Guid("AC9116BC-5732-4F80-9AED-A6E2A0C4C1F1");

            IGetAdminUserDataAccess dataAccess = A.Fake <IGetAdminUserDataAccess>();

            Domain.Admin.CompetentAuthorityUser user = A.Fake <Domain.Admin.CompetentAuthorityUser>();
            A.CallTo(() => dataAccess.GetAdminUserOrDefault(userId)).Returns(user);

            IWeeeAuthorization authorization = AuthorizationBuilder.CreateFromUserType(userType);

            var userMap = A.Fake <IMap <Domain.User.UserStatus, Core.Shared.UserStatus> >();

            A.CallTo(() => userMap.Map(user.UserStatus)).Returns(UserStatus.Inactive);

            GetAdminUserStatusHandler handler = new GetAdminUserStatusHandler(dataAccess, userMap, authorization);

            GetAdminUserStatus request = new GetAdminUserStatus(userId.ToString());

            // Act
            Func <Task <UserStatus> > action = () => handler.HandleAsync(request);

            // Assert
            await Assert.ThrowsAsync <SecurityException>(action);
        }
Example #2
0
        public async void GetAdminUserStatusHandler_HappyPath_ReturnsUserStaus()
        {
            // Arrange
            Guid userId = new Guid("AC9116BC-5732-4F80-9AED-A6E2A0C4C1F1");

            IGetAdminUserDataAccess dataAccess = A.Fake <IGetAdminUserDataAccess>();

            Domain.Admin.CompetentAuthorityUser user = A.Fake <Domain.Admin.CompetentAuthorityUser>();
            A.CallTo(() => dataAccess.GetAdminUserOrDefault(userId)).Returns(user);

            IWeeeAuthorization authorization = new AuthorizationBuilder()
                                               .AllowInternalAreaAccess()
                                               .Build();

            var userMap = A.Fake <IMap <Domain.User.UserStatus, UserStatus> >();

            A.CallTo(() => userMap.Map(user.UserStatus)).Returns(UserStatus.Active);

            GetAdminUserStatusHandler handler = new GetAdminUserStatusHandler(dataAccess, userMap, authorization);

            GetAdminUserStatus request = new GetAdminUserStatus(userId.ToString());

            // Act
            UserStatus result = await handler.HandleAsync(request);

            // Assert
            Assert.Equal(UserStatus.Active, result);
        }