from django.contrib.auth.models import Group, Permission from django.core.management import call_command from apps.accounts.permissions import DEFAULT_GROUPS, PERMISSIONS def test_seed_permissions_creates_permissions_and_groups(db): call_command("seed_permissions") assert Permission.objects.filter( codename__in=[permission.codename for permission in PERMISSIONS] ).count() == len(PERMISSIONS) for group_name, codenames in DEFAULT_GROUPS.items(): group = Group.objects.get(name=group_name) actual = set(group.permissions.values_list("codename", flat=True)) assert actual == set(codenames)