Пример #1
0
 def test_non_project_member(self, column):
     user = UserFactory()
     assert not user.has_perm("columns.create_column", column.project)
     assert not user.has_perm("columns.move_columns", column.project)
     assert not user.has_perm("columns.view_column", column)
     assert not user.has_perm("columns.change_column", column)
     assert not user.has_perm("columns.delete_column", column)
Пример #2
0
 def test_accept_existing_member(self, invite):
     user = UserFactory(email=invite.email)
     ProjectMemberFactory(project=invite.project, user=user)
     with pytest.raises(Invite.AlreadyMember):
         invite.accept(user)
         assert not invite.invitee
         assert not invite.accepted
Пример #3
0
def login_user(client):
    password = "******"
    user = UserFactory()
    user.set_password(password)
    user.save()
    client.login(username=user.username, password=password)
    return user
Пример #4
0
 def test_card_assignee_non_member(self):
     user = UserFactory()
     card = CardFactory(assignee=user)
     task = TaskFactory(card=card)
     assert not card.assignee.has_perm("tasks.create_task", card)
     assert not card.assignee.has_perm("tasks.move_tasks", card)
     assert not card.assignee.has_perm("tasks.change_task", task)
     assert not card.assignee.has_perm("tasks.delete_task", task)
Пример #5
0
    def test_accept_existing_unauthenticated_user(self, client):
        invite = InviteFactory(email=UserFactory().email)
        response = client.get(
            reverse("invites:accept_invite", args=[invite.pk]))
        assert response.url.startswith(reverse(settings.LOGIN_URL))

        invite.refresh_from_db()
        assert not invite.accepted
Пример #6
0
 def test_project_admin(self, column):
     user = UserFactory()
     ProjectMemberFactory(user=user,
                          project=column.project,
                          role=ProjectMember.Role.ADMIN)
     assert user.has_perm("columns.create_column", column.project)
     assert user.has_perm("columns.move_columns", column.project)
     assert user.has_perm("columns.view_column", column)
     assert user.has_perm("columns.change_column", column)
     assert user.has_perm("columns.delete_column", column)
Пример #7
0
 def test_project_manager(self, column):
     user = UserFactory()
     ProjectMemberFactory(user=user,
                          project=column.project,
                          role=ProjectMember.Role.MANAGER)
     assert not user.has_perm("columns.create_column", column.project)
     assert not user.has_perm("columns.move_columns", column.project)
     assert user.has_perm("columns.view_column", column)
     assert not user.has_perm("columns.change_column", column)
     assert not user.has_perm("columns.delete_column", column)
Пример #8
0
 def test_save(self, project):
     # one new user and one existing user
     UserFactory(email="*****@*****.**")
     data = {
         "emails":
         """
         [email protected]
         [email protected]
         """
     }
     form = InviteForm(data, project=project)
     assert form.is_valid()
     invites = form.save(project.owner)
     assert len(invites) == 2
Пример #9
0
 def test_accessible_to_if_not_owner(self, card):
     assert Card.objects.accessible_to(UserFactory()).count() == 0
Пример #10
0
 def test_accept(self, invite):
     user = UserFactory(email=invite.email)
     invite.accept(user)
     assert invite.invitee == user
     assert invite.accepted
Пример #11
0
def user():
    return UserFactory()
Пример #12
0
 def test_accessible_to_if_not_owner(self, project):
     assert Project.objects.accessible_to(UserFactory()).count() == 0