66def test_stdin (runner , httpserver , simple_user_payload ):
77 """Test that JSON stdin is passed in the POST request."""
88
9- httpserver .expect_request (
10- "/Users" ,
11- method = "POST" ,
12- ).respond_with_json (
13- simple_user_payload ("new-user" ),
9+ response_payload = simple_user_payload ("new-user" )
10+ httpserver .expect_request ("/Users" , method = "POST" ).respond_with_json (
11+ response_payload ,
1412 status = 201 ,
1513 content_type = "application/scim+json" ,
1614 )
@@ -31,22 +29,7 @@ def test_stdin(runner, httpserver, simple_user_payload):
3129 assert result .exit_code == 0 , result .stdout
3230 json_output = json .loads (result .output )
3331
34- # TODO: actually, there should not be the enterpriseuser schema unless some attributes of the extension are filled
35- assert json_output == {
36- "schemas" : [
37- "urn:ietf:params:scim:schemas:core:2.0:User" ,
38- "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User" ,
39- ],
40- "meta" : {
41- "created" : "2010-01-23T04:56:22Z" ,
42- "lastModified" : "2011-05-13T04:42:34Z" ,
43- "location" : f"http://localhost:{ httpserver .port } /Users/new-user" ,
44- "resourceType" : "User" ,
45- "version" : 'W\\ /"3694e05e9dff590"' ,
46- },
47- "id" : "new-user" ,
48- "userName" : "new-user@example.com" ,
49- }
32+ assert json_output == response_payload
5033
5134
5235def test_no_stdin (runner , httpserver , simple_user_payload ):
@@ -61,29 +44,6 @@ def test_no_stdin(runner, httpserver, simple_user_payload):
6144 assert "Input data is missing" in result .stdout
6245
6346
64- def test_network_error (runner ):
65- """Test httpx errors handling."""
66-
67- payload = {
68- "schemas" : [
69- "urn:ietf:params:scim:schemas:core:2.0:User" ,
70- ],
71- "userName" : "new-user@example.com" ,
72- }
73-
74- result = runner .invoke (
75- cli ,
76- [
77- "http://invalid.test" ,
78- "create" ,
79- ],
80- catch_exceptions = False ,
81- input = json .dumps (payload ),
82- )
83- assert result .exit_code == 1 , result .stdout
84- assert "Name or service not known" in result .stdout
85-
86-
8747def test_scimclient_error (runner , httpserver , simple_user_payload ):
8848 """Test scim2_client errors handling."""
8949
@@ -145,4 +105,4 @@ def test_validation_error(runner, httpserver, simple_user_payload):
145105 input = json .dumps (payload ),
146106 )
147107 assert result .exit_code == 1 , result .stdout
148- assert "The server response is invalid " in result .stdout
108+ assert "Expected type User but got undefined object with no schema " in result .stdout
0 commit comments