Пример #1
0
    def test_board_membership_permissions_for_admin(self):
        organization_membership = OrganizationMembershipFactory(role=OrganizationMemberRole.ADMIN)
        board_membership = BoardMembershipFactory(organization_membership=organization_membership)
        target_board_membership = BoardMembershipFactory(
            organization_membership=OrganizationMembershipFactory(organization=organization_membership.organization),
            board_id=board_membership.board_id,
        )
        target_owner_board_membership = BoardMembershipFactory(
            organization_membership=OrganizationMembershipFactory(
                organization=organization_membership.organization,
                role=OrganizationMemberRole.OWNER,
            ),
            board_id=board_membership.board_id,
        )

        permissions = PermissionsService.get_board_membership_permissions(
            board_membership_id=target_board_membership.id,
            user_id=organization_membership.user_id,
        )
        self._assert_has_all_permissions(permissions)

        permissions = PermissionsService.get_board_membership_permissions(
            board_membership_id=target_owner_board_membership.id,
            user_id=organization_membership.user_id,
        )
        self._assert_has_read_permissions(permissions)

        permissions = PermissionsService.get_board_membership_permissions(
            board_membership_id=board_membership.id,
            user_id=organization_membership.user_id,
        )
        self._assert_has_all_permissions(permissions)
Пример #2
0
    def test_organization_invite_permissions_for_recipient(self):
        invite = OrganizationInviteFactory()

        permissions = PermissionsService.get_organization_invite_permissions(
            organization_invite_id=invite.id,
            user_id=invite.user_id,
        )
        self._assert_has_all_permissions(permissions)
Пример #3
0
    def test_organization_membership_permissions_for_owner(self):
        organization_membership = OrganizationMembershipFactory(role=OrganizationMemberRole.OWNER)
        target_organization_membership = OrganizationMembershipFactory(
            organization_id=organization_membership.organization_id,
        )

        permissions = PermissionsService.get_organization_membership_permissions(
            organization_membership_id=target_organization_membership.id,
            user_id=organization_membership.user_id,
        )
        self._assert_has_all_permissions(permissions)

        permissions = PermissionsService.get_organization_membership_permissions(
            organization_membership_id=organization_membership.id,
            user_id=organization_membership.user_id,
        )
        self._assert_has_all_permissions(permissions)
Пример #4
0
    def test_category_permissions_for_board_member(self):
        board_membership = BoardMembershipFactory()
        category = CategoryFactory(board_id=board_membership.board_id)

        permissions = PermissionsService.get_category_permissions(
            category_id=category.id,
            user_id=board_membership.organization_membership.user_id,
        )
        self._assert_has_all_permissions(permissions)
Пример #5
0
    def test_ticket_permissions_for_board_member(self):
        board_membership = BoardMembershipFactory()
        ticket = TicketFactory(category=CategoryFactory(board_id=board_membership.board_id))

        permissions = PermissionsService.get_ticket_permissions(
            ticket_id=ticket.id,
            user_id=board_membership.organization_membership.user_id,
        )
        self._assert_has_all_permissions(permissions)
Пример #6
0
    def test_board_permissions_for_not_a_board_member(self):
        organization_membership = OrganizationMembershipFactory(role=OrganizationMemberRole.MEMBER)
        board = BoardFactory(organization_id=organization_membership.organization_id)

        permissions = PermissionsService.get_board_permissions(
            board_id=board.id,
            user_id=organization_membership.user_id,
        )
        self._assert_has_no_permissions(permissions)
Пример #7
0
    def test_board_permissions_for_admin(self):
        organization_membership = OrganizationMembershipFactory(role=OrganizationMemberRole.ADMIN)
        board_membership = BoardMembershipFactory(organization_membership=organization_membership)

        permissions = PermissionsService.get_board_permissions(
            board_id=board_membership.board_id,
            user_id=organization_membership.user_id,
        )
        self._assert_has_mutate_permissions(permissions)
Пример #8
0
    def test_board_permissions_for_owner(self):
        organization_membership = OrganizationMembershipFactory(role=OrganizationMemberRole.OWNER)
        board_membership = BoardMembershipFactory(organization_membership=organization_membership)

        permissions = PermissionsService.get_board_permissions(
            board_id=board_membership.board_id,
            user_id=organization_membership.user_id,
        )
        self._assert_has_all_permissions(permissions)
Пример #9
0
    def test_organization_permissions_for_organization_member(self):
        organization_membership_1 = OrganizationMembershipFactory(role=OrganizationMemberRole.ADMIN)
        organization_membership_2 = OrganizationMembershipFactory(role=OrganizationMemberRole.MEMBER)

        for member in (organization_membership_1, organization_membership_2):
            permissions = PermissionsService.get_organization_permissions(
                organization_id=member.organization_id,
                user_id=member.user_id,
            )
            self._assert_has_read_permissions(permissions)
Пример #10
0
    def test_category_permissions_for_not_a_board_member(self):
        category = CategoryFactory()
        organization_membership = OrganizationMembershipFactory(
            organization_id=category.board.organization_id,
        )

        permissions = PermissionsService.get_category_permissions(
            category_id=category.id,
            user_id=organization_membership.user_id,
        )
        self._assert_has_no_permissions(permissions)
Пример #11
0
    def test_ticket_assignment_permissions_for_not_a_board_member(self):
        ticket_assignment = TicketAssignmentFactory()
        organization_membership = OrganizationMembershipFactory(
            organization_id=ticket_assignment.ticket.category.board.organization_id,
        )

        permissions = PermissionsService.get_ticket_assignment_permissions(
            ticket_assignment_id=ticket_assignment.id,
            user_id=organization_membership.user_id,
        )
        self._assert_has_no_permissions(permissions)
Пример #12
0
 def test_organization_permissions_for_a_random_user(self):
     permissions = PermissionsService.get_organization_permissions(
         organization_id=OrganizationFactory().id,
         user_id=UserFactory().id,
     )
     self._assert_has_no_permissions(permissions)
Пример #13
0
 def test_ticket_assignment_permissions_ticket_assignment_not_found(self):
     permissions = PermissionsService.get_ticket_assignment_permissions(
         ticket_assignment_id=-1,
         user_id=UserFactory().id,
     )
     self._assert_has_no_permissions(permissions)
Пример #14
0
 def test_ticket_assignment_permissions_for_a_random_user(self):
     permissions = PermissionsService.get_ticket_assignment_permissions(
         ticket_assignment_id=TicketAssignmentFactory().id,
         user_id=UserFactory().id,
     )
     self._assert_has_no_permissions(permissions)
Пример #15
0
 def test_board_membership_permissions_for_a_random_user(self):
     permissions = PermissionsService.get_board_membership_permissions(
         board_membership_id=BoardMembershipFactory().id,
         user_id=UserFactory().id,
     )
     self._assert_has_no_permissions(permissions)
Пример #16
0
 def test_board_membership_permissions_board_membership_not_found(self):
     permissions = PermissionsService.get_board_membership_permissions(
         board_membership_id=-1,
         user_id=UserFactory().id,
     )
     self._assert_has_no_permissions(permissions)
Пример #17
0
 def test_category_permissions_category_not_found(self):
     permissions = PermissionsService.get_category_permissions(
         category_id=-1,
         user_id=UserFactory().id,
     )
     self._assert_has_no_permissions(permissions)
Пример #18
0
 def test_organization_permissions_organization_not_found(self):
     permissions = PermissionsService.get_organization_permissions(
         organization_id=-1,
         user_id=UserFactory().id,
     )
     self._assert_has_no_permissions(permissions)
Пример #19
0
 def test_category_permissions_for_a_random_user(self):
     permissions = PermissionsService.get_category_permissions(
         category_id=CategoryFactory().id,
         user_id=UserFactory().id,
     )
     self._assert_has_no_permissions(permissions)
Пример #20
0
 def test_organization_membership_permissions_for_not_organization_member(self):
     permissions = PermissionsService.get_organization_membership_permissions(
         organization_membership_id=OrganizationMembershipFactory().id,
         user_id=UserFactory().id,
     )
     self._assert_has_no_permissions(permissions)