コード例 #1
0
        public async Task Demand_MultiplePrivileges_UserWithPrivilege_NoAuthorizationExceptionsThrown()
        {
            // arrange
            Exception exception      = null;
            const int userId         = 1;
            var       repositoryMock = new Mock <IPrivilegesRepository>();

            repositoryMock
            .Setup(m => m.GetInstanceAdminPrivilegesAsync(userId))
            .ReturnsAsync(InstanceAdminPrivileges.AssignAdminRoles);
            var manager = new PrivilegesManager(repositoryMock.Object);

            // act
            try
            {
                await manager.Demand(userId, InstanceAdminPrivileges.ManageUsers | InstanceAdminPrivileges.AssignAdminRoles);
            }
            catch (AuthorizationException ex)
            {
                exception = ex;
            }

            // assert
            Assert.IsNull(exception);
        }
コード例 #2
0
        public async Task Demand_MultiplePrivileges_UserWithoutPrivilege_ThrowsAuthorizationException()
        {
            // arrange
            const int userId         = 1;
            var       repositoryMock = new Mock <IPrivilegesRepository>();

            repositoryMock
            .Setup(m => m.GetInstanceAdminPrivilegesAsync(userId))
            .ReturnsAsync(InstanceAdminPrivileges.ManageUsers);
            var manager = new PrivilegesManager(repositoryMock.Object);

            // act
            await manager.Demand(userId, InstanceAdminPrivileges.ManageUsers | InstanceAdminPrivileges.AssignAdminRoles);
        }