Skip to content

Commit 738ae77

Browse files
authored
fix: Allow empty array for ListResponse Resources when totalResults is non-zero (#133)
1 parent be11c16 commit 738ae77

File tree

2 files changed

+2
-5
lines changed

2 files changed

+2
-5
lines changed

scim2_models/messages/list_response.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ def check_results_number(
6060
"Field 'total_results' is required but value is missing or null",
6161
)
6262

63-
if obj.total_results > 0 and not obj.resources:
63+
if obj.total_results > 0 and obj.resources is None:
6464
raise PydanticCustomError(
6565
"no_resource_error",
6666
"Field 'resources' is missing or null but 'total_results' is non-zero.",

tests/test_list_response.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -186,10 +186,7 @@ def test_zero_results():
186186
ListResponse[User].model_validate(payload, scim_ctx=Context.RESOURCE_QUERY_RESPONSE)
187187

188188
payload = {"totalResults": 1, "Resources": []}
189-
with pytest.raises(ValidationError):
190-
ListResponse[User].model_validate(
191-
payload, scim_ctx=Context.RESOURCE_QUERY_RESPONSE
192-
)
189+
ListResponse[User].model_validate(payload, scim_ctx=Context.RESOURCE_QUERY_RESPONSE)
193190

194191
payload = {"totalResults": 1}
195192
with pytest.raises(ValidationError):

0 commit comments

Comments
 (0)