def test_put(self): with mock.patch.object(requests, "put"): client = Client("key", "secret") client._put("/api/") requests.put.assert_called() args = requests.put.call_args[1] self.assertEqual(args["url"], "https://api.shapeways.com/api/v1") self.assertIsInstance(args["auth"], OAuth1) self.assertEqual(args["params"], None) self.assertEqual(args["data"], None) requests.put.reset_mock() client = Client("key", "secret") params = { "key": "value", } client._put("/api/", params=params) requests.put.assert_called() args = requests.put.call_args[1] self.assertEqual(args["url"], "https://api.shapeways.com/api/v1") self.assertIsInstance(args["auth"], OAuth1) self.assertEqual(args["params"], params) self.assertEqual(args["data"], None) requests.put.reset_mock() client = Client("key", "secret") body = "nice body" client._put("/api/", body=body) requests.put.assert_called() args = requests.put.call_args[1] self.assertEqual(args["url"], "https://api.shapeways.com/api/v1") self.assertIsInstance(args["auth"], OAuth1) self.assertEqual(args["params"], None) self.assertEqual(args["data"], body) requests.put.reset_mock() client = Client("key", "secret") params = { "key": "value", } body = "nice body" client._put("/api/", body=body, params=params) requests.put.assert_called() args = requests.put.call_args[1] self.assertEqual(args["url"], "https://api.shapeways.com/api/v1") self.assertIsInstance(args["auth"], OAuth1) self.assertEqual(args["params"], params) self.assertEqual(args["data"], body)