public void HandleAuthorizationRequest_WithNoAllowedRolesProvided_GivesSuccess(IEnumerable <string> userRoles)
        {
            var allowedRoles = Enumerable.Empty <string>();
            var sut          = new RoleAuthorizationRequirement(allowedRoles);
            var userStub     = new Mock <User>(() => new User(String.Empty, userRoles));

            var result = sut.HandleAuthorizationRequest(userStub.Object);

            result.Success.Should().BeTrue("because no allowed roles have been defined");
        }
        public void HandleAuthorizationRequest_ForAuthorizedUser_GivesSuccess()
        {
            var allowedRoles = new[] { "Developer" };
            var userStub     = new Mock <User>(() => new User(String.Empty, allowedRoles));
            var sut          = new RoleAuthorizationRequirement(allowedRoles);

            var result = sut.HandleAuthorizationRequest(userStub.Object);

            result.Success.Should().BeTrue("because the user has required role");
        }