0001-WIP-api_views-display-the-list-of-roles-for-a-user-2.patch
src/authentic2/api_views.py | ||
---|---|---|
311 | 311 |
queryset=get_ou_model().objects.all(), |
312 | 312 |
slug_field='slug', |
313 | 313 |
required=False, default=get_default_ou) |
314 |
roles = serializers.SlugRelatedField( |
|
315 |
queryset=get_role_model().objects.all(), |
|
316 |
slug_field='slug', |
|
317 |
many=True, |
|
318 |
required=False) |
|
314 | 319 |
date_joined = serializers.DateTimeField(read_only=True) |
315 | 320 |
last_login = serializers.DateTimeField(read_only=True) |
316 | 321 |
send_registration_email = serializers.BooleanField(write_only=True, required=False, |
tests/test_api.py | ||
---|---|---|
141 | 141 |
assert resp.json['next'] is None |
142 | 142 | |
143 | 143 | |
144 |
def test_api_users_create(settings, app, api_user): |
|
144 |
def test_api_users_create(settings, app, api_user, role_random):
|
|
145 | 145 |
from django.contrib.auth import get_user_model |
146 | 146 |
from authentic2.models import Attribute, AttributeValue |
147 | 147 | |
... | ... | |
175 | 175 |
'email': 'john.doe@example.net', |
176 | 176 |
'password': 'password', |
177 | 177 |
'title': 'Mr', |
178 |
'roles': ['rando'], |
|
178 | 179 |
} |
179 | 180 |
if api_user.is_superuser: |
180 | 181 |
status = 201 |
... | ... | |
188 | 189 |
if api_user.is_superuser or api_user.roles.exists(): |
189 | 190 |
assert set(['ou', 'id', 'uuid', 'is_staff', 'is_superuser', 'first_name', 'last_name', |
190 | 191 |
'date_joined', 'last_login', 'username', 'password', 'email', 'is_active', |
191 |
'title', 'modified', 'email_verified']) == set(resp.json.keys()) |
|
192 |
'title', 'modified', 'email_verified', 'roles']) == set(resp.json.keys())
|
|
192 | 193 |
assert resp.json['first_name'] == payload['first_name'] |
193 | 194 |
assert resp.json['last_name'] == payload['last_name'] |
194 | 195 |
assert resp.json['email'] == payload['email'] |
195 |
- |