'Verify that voting, flagging, and following of threads is limited to members of the team or users with
\'edit_content\' permission.'

@ddt.data(*ddt_permissions_args)
@ddt.unpack
def test_threads_actions(self, user, commentable_id, status_code, mock_request):

    commentable_id = getattr(self, commentable_id)
    self._setup_mock(user, mock_request, {'closed': False, 'commentable_id': commentable_id})
    for action in ['upvote_thread', 'downvote_thread', 'un_flag_abuse_for_thread', 'flag_abuse_for_thread', 'follow_thread', 'unfollow_thread']:
        response = self.client.post(reverse(action, kwargs={'course_id': unicode(self.course.id), 'thread_id': 'dummy_thread'}))
        self.assertEqual(response.status_code, status_code)
