Example #1
0
 def test_private_discussion_visible_by_user(self):
     self.assertTrue(
         teams_api.discussion_visible_by_user(DISCUSSION_TOPIC_ID,
                                              self.user1))
     self.assertTrue(
         teams_api.discussion_visible_by_user(DISCUSSION_TOPIC_ID,
                                              self.user2))
Example #2
0
 def test_public_discussion_visible_by_user(self):
     self.assertTrue(
         teams_api.discussion_visible_by_user(
             self.team2.discussion_topic_id, self.user1))
     self.assertTrue(
         teams_api.discussion_visible_by_user(
             self.team2.discussion_topic_id, self.user2))
     self.assertTrue(
         teams_api.discussion_visible_by_user('DO_NOT_EXISTS', self.user3))
Example #3
0
def _check_team_discussion_access(request, course, discussion_id):
    """
    Helper function to check if the discussion is visible to the user,
    if the user is on a team, which has the discussion set to private.
    """
    user_is_course_staff = has_access(request.user, "staff", course)
    if not user_is_course_staff and not team_api.discussion_visible_by_user(discussion_id, request.user):
        raise TeamDiscussionHiddenFromUserException()