コード例 #1
0
 def test_data_sent_to_server(self):
     req_obj = KazooRequest(self.path, auth_required=False)
     with mock.patch('requests.get') as mock_get:
         data_dict = {"data1": "dataval1"}
         req_obj.execute("http://testserver",
                         param3="someval",
                         data=data_dict)
         self.assert_data(mock_get, data_dict)
コード例 #2
0
 def test_data_sent_to_server(self):
     req_obj = KazooRequest(self.path, auth_required=False)
     with mock.patch('requests.get') as mock_get:
         data_dict = {
             "data1": "dataval1"
         }
         req_obj.execute("http://testserver", param3="someval",
                         data=data_dict)
         self.assert_data(mock_get, data_dict)
コード例 #3
0
 def test_invalid_data_displays_invalid_field_data(self):
     req_obj = KazooRequest("/somepath", auth_required=False)
     with mock.patch('requests.get') as mock_get:
         mock_response = mock.Mock()
         mock_response.status_code = 400
         mock_response.json.return_value = utils.load_fixture_as_dict(
             "invalid_data_response.json")
         mock_get.return_value = mock_response
         with self.assertRaises(exceptions.KazooApiBadDataError) as cm:
             req_obj.execute("http://testserver.com")
             self.assertTrue("realm" in cm.exception.field_errors)
コード例 #4
0
 def test_internal_server_error_unparseable(self):
     req_obj = KazooRequest("/somepath", auth_required=False)
     with mock.patch('requests.get') as mock_get:
         mock_response = mock.Mock()
         mock_response.status_code = 500
         mock_response.headers = {"X-Request-Id": "sdfaskldfjaosdf"}
         mock_response.json.return_value = None
         mock_get.return_value = mock_response
         with self.assertRaises(exceptions.KazooApiError) as cm:
             req_obj.execute("http://testserver")
             self.assertTrue("Request ID" in cm.exception)
コード例 #5
0
 def test_invalid_data_displays_invalid_field_data(self):
     req_obj = KazooRequest("/somepath", auth_required=False)
     with mock.patch('requests.get') as mock_get:
         mock_response = mock.Mock()
         mock_response.status_code = 400
         mock_response.json = utils.load_fixture_as_dict(
             "invalid_data_response.json")
         mock_get.return_value = mock_response
         with self.assertRaises(exceptions.KazooApiBadDataError) as cm:
             req_obj.execute("http://testserver.com")
         self.assertTrue("realm" in cm.exception.field_errors)
コード例 #6
0
 def test_internal_server_error_unparseable(self):
     req_obj = KazooRequest("/somepath", auth_required=False)
     with mock.patch('requests.get') as mock_get:
         mock_response = mock.Mock()
         mock_response.status_code = 500
         mock_response.headers = {"X-Request-Id": "sdfaskldfjaosdf"}
         mock_response.json = None
         mock_get.return_value = mock_response
         with self.assertRaises(exceptions.KazooApiError) as cm:
             req_obj.execute("http://testserver")
         self.assertTrue("Request ID" in cm.exception.message)
コード例 #7
0
 def test_kazoo_api_error_raised_on_error_response(self):
     req_obj = KazooRequest("/somepath", auth_required=False)
     with mock.patch('requests.get') as mock_get:
         mock_response = mock.Mock()
         mock_response.json = self.error_response
         mock_get.return_value = mock_response
         with self.assertRaises(exceptions.KazooApiError) as cm:
             req_obj.execute("http://testserver")
         expected_errors = "the error was {0}".format(
             self.error_response["message"])
         self.assertTrue(expected_errors in cm.exception.message)
コード例 #8
0
 def test_kazoo_api_error_raised_on_error_response(self):
     req_obj = KazooRequest("/somepath", auth_required=False)
     with mock.patch('requests.get') as mock_get:
         mock_response = mock.Mock()
         mock_response.json = self.error_response
         mock_get.return_value = mock_response
         with self.assertRaises(exceptions.KazooApiError) as cm:
             req_obj.execute("http://testserver")
         expected_errors = "the error was {0}".format(
                                self.error_response["message"])
         self.assertTrue(expected_errors in cm.exception.message)
コード例 #9
0
 def test_internal_server_error_has_error_message_if_parseable(self):
     req_obj = KazooRequest("/somepath", auth_required=False)
     with mock.patch('requests.get') as mock_get:
         mock_response = mock.Mock()
         mock_response.status_code = 500
         mock_response.headers = {"X-Request-Id": "sdfaskldfjaosdf"}
         mock_response.json.return_value = utils.load_fixture_as_dict(
             "bad_billing_status_response.json")
         mock_get.return_value = mock_response
         with self.assertRaises(exceptions.KazooApiError) as cm:
             req_obj.execute("http://testserver")
             self.assertTrue(
                 "Unable to continue due to billing" in cm.exception)
コード例 #10
0
 def test_internal_server_error_has_error_message_if_parseable(self):
     req_obj = KazooRequest("/somepath", auth_required=False)
     with mock.patch('requests.get') as mock_get:
         mock_response = mock.Mock()
         mock_response.status_code = 500
         mock_response.headers = {"X-Request-Id": "sdfaskldfjaosdf"}
         mock_response.json = utils.load_fixture_as_dict(
             "bad_billing_status_response.json")
         mock_get.return_value = mock_response
         with self.assertRaises(exceptions.KazooApiError) as cm:
             req_obj.execute("http://testserver")
         ex = cm.exception
         self.assertTrue("Unable to continue due to billing" in ex.message)
コード例 #11
0
 def test_get_parameters_added_to_url(self):
     request = KazooRequest("/somepath", auth_required=False,
                            get_params={"one":1, "two":2})
     with mock.patch('requests.get') as mock_get:
         mock_response = mock.Mock()
         mock_response.status_code = 200
         mock_response.json = {"result":"fake", "status":"success"}
         mock_get.return_value = mock_response
         request.execute("http://testserver.com")
         mock_get.assert_called_with(
             "http://testserver.com/somepath?two=2&one=1",
             headers=mock.ANY
         )
コード例 #12
0
 def test_data_sent_to_server_with_auth_if_required(self):
     req_obj = KazooRequest(self.path, auth_required=True)
     with mock.patch('requests.post') as mock_post:
         data_dict = {
             "data1": "dataval1"
         }
         token = "sdkjfhasdfa"
         expected_headers = {
             "Content-Type": "application/json",
             "X-Auth-Token": token,
         }
         req_obj.execute("http://testserver", param3="someval",
                         token=token, method="post")
         mock_post.assert_called_with(mock.ANY, headers=expected_headers)
コード例 #13
0
 def test_data_sent_to_server_with_auth_if_required(self):
     req_obj = KazooRequest(self.path, auth_required=True)
     with mock.patch('requests.post') as mock_post:
         data_dict = {"data1": "dataval1"}
         token = "sdkjfhasdfa"
         expected_headers = {
             "Content-Type": "application/json",
             "X-Auth-Token": token,
         }
         req_obj.execute("http://testserver",
                         param3="someval",
                         token=token,
                         method="post")
         mock_post.assert_called_with(mock.ANY, headers=expected_headers)
コード例 #14
0
 def test_get_parameters_added_to_url(self):
     request = KazooRequest("/somepath",
                            auth_required=False,
                            get_params={
                                "one": 1,
                                "two": 2
                            })
     with mock.patch('requests.get') as mock_get:
         mock_response = mock.Mock()
         mock_response.status_code = 200
         mock_response.json = {"result": "fake", "status": "success"}
         mock_get.return_value = mock_response
         request.execute("http://testserver.com")
         mock_get.assert_called_with(
             "http://testserver.com/somepath?two=2&one=1", headers=mock.ANY)