42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
import pytest
|
|
from django.contrib.auth.models import Group
|
|
from django.contrib.auth import get_user_model
|
|
|
|
User = get_user_model()
|
|
|
|
@pytest.mark.django_db
|
|
def test_create_user():
|
|
"""Testira kreiranje standardnog korisnika."""
|
|
user = User.objects.create_user(
|
|
email="test@example.com",
|
|
password="password123"
|
|
)
|
|
assert user.email == "test@example.com"
|
|
assert user.check_password("password123")
|
|
assert user.is_active is True
|
|
|
|
@pytest.mark.django_db
|
|
def test_create_superuser():
|
|
"""Testira kreiranje superuser-a."""
|
|
admin = User.objects.create_superuser(
|
|
email="admin@example.com",
|
|
password="password123"
|
|
)
|
|
assert admin.is_superuser is True
|
|
assert admin.is_staff is True
|
|
|
|
|
|
@pytest.mark.django_db
|
|
def test_user_groups_many_to_many_relation():
|
|
user = User.objects.create_user(
|
|
email="m2m@example.com",
|
|
password="password123",
|
|
)
|
|
group_a = Group.objects.create(name="Serviseri")
|
|
group_b = Group.objects.create(name="Dispeceri")
|
|
|
|
user.groups.add(group_a, group_b)
|
|
|
|
assert user.groups.count() == 2
|
|
assert group_a.user_set.filter(id=user.id).exists()
|
|
assert group_b.user_set.filter(id=user.id).exists() |