def test_master_node_in_headers(self, requests_post): requests_post.return_value = Mock(status_code=200) sender = StatsSender() url = '' data = {} master_node_uid = 'xxx' MasterNodeSettings.create({'master_node_uid': master_node_uid}) sender.send_data_to_url(url=url, data={}) requests_post.assert_called_once_with( url, headers={'content-type': 'application/json', 'master-node-uid': master_node_uid}, data=json.dumps(data), timeout=settings.COLLECTOR_RESP_TIMEOUT)
def test_master_node_in_headers(self, requests_post): requests_post.return_value = Mock(status_code=200) sender = StatsSender() url = '' data = {} master_node_uid = 'xxx' MasterNodeSettings.create({'master_node_uid': master_node_uid}) sender.send_data_to_url(url=url, data={}) requests_post.assert_called_once_with( url, headers={ 'content-type': 'application/json', 'master-node-uid': master_node_uid }, data=json.dumps(data), timeout=settings.COLLECTOR_RESP_TIMEOUT)
def test_send_failed_on_exception(self, log_error, requests_post): requests_post.side_effect = Exception("custom") sender = StatsSender() self.assertIsNone( sender.send_data_to_url( url=sender.build_collector_url("COLLECTOR_ACTION_LOGS_URL"), data={})) log_error.assert_called_once_with( "Sending data to collector failed: %s", "custom")
def test_send_failed_on_exception(self, log_error, requests_post): requests_post.side_effect = Exception("custom") sender = StatsSender() self.assertIsNone( sender.send_data_to_url( url=sender.build_collector_url("COLLECTOR_ACTION_LOGS_URL"), data={}) ) log_error.assert_called_once_with( "Sending data to collector failed: %s", "custom")
def test_send_ok(self, requests_post): requests_post.return_value = Mock(status_code=200) sender = StatsSender() self.assertEqual( sender.send_data_to_url( url=sender.build_collector_url("COLLECTOR_ACTION_LOGS_URL"), data={}), requests_post.return_value) requests_post.assert_called_once_with( sender.build_collector_url("COLLECTOR_ACTION_LOGS_URL"), headers={'content-type': 'application/json'}, data='{}', timeout=settings.COLLECTOR_RESP_TIMEOUT)
def test_send_ok(self, requests_post): requests_post.return_value = Mock(status_code=200) sender = StatsSender() self.assertEqual( sender.send_data_to_url( url=sender.build_collector_url("COLLECTOR_ACTION_LOGS_URL"), data={}), requests_post.return_value ) requests_post.assert_called_once_with( sender.build_collector_url("COLLECTOR_ACTION_LOGS_URL"), headers={'content-type': 'application/json'}, data='{}', timeout=settings.COLLECTOR_RESP_TIMEOUT)
def test_send_failed_on_connection_error(self, log_error, requests_post): except_types = (urllib3.exceptions.DecodeError, urllib3.exceptions.ProxyError, requests.exceptions.ConnectionError, requests.exceptions.Timeout, requests.exceptions.TooManyRedirects) for except_ in except_types: requests_post.side_effect = except_() sender = StatsSender() self.assertIsNone( sender.send_data_to_url(url=sender.build_collector_url( "COLLECTOR_ACTION_LOGS_URL"), data={})) log_error.assert_called_with( "Sending data to collector failed: %s", type(except_()).__name__)
def test_send_failed_on_connection_error(self, log_error, requests_post): except_types = ( urllib3.exceptions.DecodeError, urllib3.exceptions.ProxyError, requests.exceptions.ConnectionError, requests.exceptions.Timeout, requests.exceptions.TooManyRedirects) for except_ in except_types: requests_post.side_effect = except_() sender = StatsSender() self.assertIsNone( sender.send_data_to_url( url=sender.build_collector_url( "COLLECTOR_ACTION_LOGS_URL"), data={}) ) log_error.assert_called_with( "Sending data to collector failed: %s", type(except_()).__name__)