26 lines
898 B
Python
26 lines
898 B
Python
import pytest
|
|
from django.contrib.auth.models import User, Group
|
|
|
|
|
|
@pytest.mark.django_db()
|
|
def test_no_admin(user, client):
|
|
client.force_login(user)
|
|
response = client.get("/admin/")
|
|
assert response.status_code != 200
|
|
|
|
|
|
@pytest.mark.django_db()
|
|
def test_user_cannot_change_program_or_episode(user, client, program):
|
|
assert not user.has_perm("aircox.change_program")
|
|
assert not user.has_perm("aircox.change_episode")
|
|
|
|
|
|
@pytest.mark.django_db()
|
|
def test_group_can_change_program(user, client, program):
|
|
assert program.editors in Group.objects.all()
|
|
assert not user.has_perm("aircox.%s" % program.change_permission_codename)
|
|
user.groups.add(program.editors)
|
|
user = User.objects.get(pk=user.pk) # reload user in order to have permissions set
|
|
assert program.editors in user.groups.all()
|
|
assert user.has_perm("aircox.%s" % program.change_permission_codename)
|