@@ -32,7 +32,7 @@ def batch_request_item(request_info):
3232def test_initialization (batch_request_item , request_info ):
3333 assert batch_request_item .id == "123"
3434 assert batch_request_item .method == "GET"
35- assert batch_request_item .url == base_url
35+ assert batch_request_item .url == "/me"
3636 assert batch_request_item .headers == {"content-type" : "application/json" }
3737 assert batch_request_item .body == b'{"key": "value"}'
3838
@@ -43,7 +43,7 @@ def test_create_with_urllib_request():
4343 urllib_request .data = b'{"key": "value"}'
4444 batch_request_item = BatchRequestItem .create_with_urllib_request (urllib_request )
4545 assert batch_request_item .method == "POST"
46- assert batch_request_item .url == "https://graph.microsoft.com/v1.0 /me"
46+ assert batch_request_item .url == "/me"
4747 assert batch_request_item .body == b'{"key": "value"}'
4848
4949
@@ -54,7 +54,29 @@ def test_set_depends_on(batch_request_item):
5454
5555def test_set_url (batch_request_item ):
5656 batch_request_item .set_url ("https://graph.microsoft.com/v1.0/me" )
57- assert batch_request_item .url == "/v1.0/me"
57+ assert batch_request_item .url == "/me"
58+
59+
60+ def test_set_url_beta (batch_request_item ):
61+ batch_request_item .set_url ("https://graph.microsoft.com/beta/me/messages?$top=5#frag" )
62+ assert batch_request_item .url == "/me/messages?$top=5#frag"
63+
64+
65+ def test_set_url_already_relative (batch_request_item ):
66+ batch_request_item .set_url ("/users/u1/messages" )
67+ assert batch_request_item .url == "/users/u1/messages"
68+
69+
70+ def test_set_url_keeps_version_like_segments (batch_request_item ):
71+ batch_request_item .set_url ("https://graph.microsoft.com/v1.0/sites/beta-site/lists" )
72+ assert batch_request_item .url == "/sites/beta-site/lists"
73+
74+
75+ def test_set_url_only_strips_a_leading_version (batch_request_item ):
76+ batch_request_item .set_url ("/sites/beta/lists" )
77+ assert batch_request_item .url == "/sites/beta/lists"
78+ batch_request_item .set_url ("https://graph.microsoft.com/v1.0/sites/beta/lists" )
79+ assert batch_request_item .url == "/sites/beta/lists"
5880
5981
6082def test_constructor_url_replacement ():
@@ -66,7 +88,7 @@ def test_constructor_url_replacement():
6688
6789 batch_request_item = BatchRequestItem (request_info )
6890
69- assert batch_request_item .url == "https://graph.microsoft.com/v1.0 /me"
91+ assert batch_request_item .url == "/me"
7092
7193
7294def test_set_url_replacement ():
@@ -79,7 +101,7 @@ def test_set_url_replacement():
79101 batch_request_item = BatchRequestItem (request_info )
80102 batch_request_item .set_url ("https://graph.microsoft.com/v1.0/users/me-token-to-replace" )
81103
82- assert batch_request_item .url == "/v1.0/ me"
104+ assert batch_request_item .url == "/me"
83105
84106
85107def test_constructor_url_replacement_with_query ():
@@ -91,7 +113,7 @@ def test_constructor_url_replacement_with_query():
91113
92114 batch_request_item = BatchRequestItem (request_info )
93115
94- assert batch_request_item .url == "https://graph.microsoft.com/v1.0 /me?param=value"
116+ assert batch_request_item .url == "/me?param=value"
95117
96118
97119def test_id_property (batch_request_item ):
@@ -138,7 +160,7 @@ def test_serialize_json(batch_request_item):
138160 content = json .loads (writer .get_serialized_content ())
139161 assert content ["id" ] == "123"
140162 assert content ["method" ] == "GET"
141- assert content ["url" ] == base_url
163+ assert content ["url" ] == "/me"
142164 assert content ["headers" ] == {"content-type" : "application/json" }
143165 assert content ["body" ] == {"key" : "value" }
144166
0 commit comments