def test_call_conversion_with_no_serializer(self): wrapper = TesterClient() responses.add(responses.GET, wrapper.test().data, body='{"any_data": "%#ˆ$&"}', status=200, content_type='application/json') response = wrapper.test().get() with self.assertRaises(NotImplementedError): response.any_data().to_datetime()
def test_not_token_refresh_client_propagates_client_error(self): no_refresh_client = TesterClient() responses.add_callback( responses.POST, no_refresh_client.test().data, callback=lambda *a, **k: (401, {}, ''), content_type='application/json', ) with self.assertRaises(ClientError): no_refresh_client.test().post()
def test_not_token_refresh_ready_client_call_raises_not_implemented(self): no_refresh_client = TesterClient() responses.add_callback( responses.POST, no_refresh_client.test().data, callback=lambda *a, **k: (401, {}, ''), content_type='application/json', ) with self.assertRaises(NotImplementedError): no_refresh_client.test().post(refresh_auth=True)
def test_external_serializer_is_passed_along_clients(self): serializer_wrapper = TesterClient(serializer_class=SimpleSerializer) responses.add(responses.GET, serializer_wrapper.test().data, body='{"date": "2014-11-13T14:53:18.694072+00:00"}', status=200, content_type='application/json') response = serializer_wrapper.test().get() self.assertTrue(response._api.serializer.__class__, SimpleSerializer)
def test_added_custom_resources(self): wrapper = TesterClient(resource_mapping=[ Resource("myresource", "http://url.ru/myresource"), Resource("myresource2", "https://url.ru/myresource2"), ]) responses.add(responses.GET, url=wrapper.myresource().data, body='[]', status=200, content_type='application/json') response = self.wrapper.myresource().get() assert response.data == []
def setUp(self): self.wrapper = TesterClient()
def test_fill_url_from_default_params(self): wrapper = TesterClient(default_url_params={'id': 123}) self.assertEqual(wrapper.user().data, 'https://api.test.com/user/123/')
def test_passing_serializer_on_instatiation(self): wrapper = TesterClient(serializer_class=SimpleSerializer) serializer = wrapper._api.serializer self.assertTrue(isinstance(serializer, BaseSerializer))