@@ -257,6 +257,54 @@ def test_create_parse_host_port(self, mock):
257257 ]
258258 self .assertEqual (expected_ports , actual_ports )
259259
260+ @requests_mock .Mocker ()
261+ def test_create_userns_mode_simple (self , mock ):
262+ mock_response = MagicMock ()
263+ mock_response .json = lambda : {
264+ "Id" : "87e1325c82424e49a00abdd4de08009eb76c7de8d228426a9b8af9318ced5ecd" ,
265+ "Size" : 1024 ,
266+ }
267+ self .client .containers .client .post = MagicMock (return_value = mock_response )
268+ mock .get (
269+ tests .LIBPOD_URL
270+ + "/containers/87e1325c82424e49a00abdd4de08009eb76c7de8d228426a9b8af9318ced5ecd/json" ,
271+ json = FIRST_CONTAINER ,
272+ )
273+
274+ userns = "keep-id"
275+ self .client .containers .create ("fedora" , "/usr/bin/ls" , userns_mode = userns )
276+ self .client .containers .client .post .assert_called ()
277+ expected_userns = {"nsmode" : userns }
278+
279+ actual_userns = json .loads (self .client .containers .client .post .call_args [1 ]["data" ])[
280+ "userns"
281+ ]
282+ self .assertEqual (expected_userns , actual_userns )
283+
284+ @requests_mock .Mocker ()
285+ def test_create_userns_mode_dict (self , mock ):
286+ mock_response = MagicMock ()
287+ mock_response .json = lambda : {
288+ "Id" : "87e1325c82424e49a00abdd4de08009eb76c7de8d228426a9b8af9318ced5ecd" ,
289+ "Size" : 1024 ,
290+ }
291+ self .client .containers .client .post = MagicMock (return_value = mock_response )
292+ mock .get (
293+ tests .LIBPOD_URL
294+ + "/containers/87e1325c82424e49a00abdd4de08009eb76c7de8d228426a9b8af9318ced5ecd/json" ,
295+ json = FIRST_CONTAINER ,
296+ )
297+
298+ userns = {"nsmode" : "keep-id" , "value" : "uid=900" }
299+ self .client .containers .create ("fedora" , "/usr/bin/ls" , userns_mode = userns )
300+ self .client .containers .client .post .assert_called ()
301+ expected_userns = dict (** userns )
302+
303+ actual_userns = json .loads (self .client .containers .client .post .call_args [1 ]["data" ])[
304+ "userns"
305+ ]
306+ self .assertEqual (expected_userns , actual_userns )
307+
260308 def test_create_unsupported_key (self ):
261309 with self .assertRaises (TypeError ):
262310 self .client .containers .create ("fedora" , "/usr/bin/ls" , blkio_weight = 100.0 )
0 commit comments