mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-07-29 17:39:48 +03:00
Improve test_renderer_mapping test
This commit is contained in:
parent
13158d6552
commit
456e71a2e8
|
@ -10,7 +10,7 @@ from rest_framework import filters, generics, pagination, routers, serializers
|
||||||
from rest_framework.authtoken.views import obtain_auth_token
|
from rest_framework.authtoken.views import obtain_auth_token
|
||||||
from rest_framework.compat import uritemplate
|
from rest_framework.compat import uritemplate
|
||||||
from rest_framework.parsers import JSONParser, MultiPartParser
|
from rest_framework.parsers import JSONParser, MultiPartParser
|
||||||
from rest_framework.renderers import JSONRenderer, OpenAPIRenderer
|
from rest_framework.renderers import JSONRenderer, OpenAPIRenderer, BrowsableAPIRenderer, BaseRenderer
|
||||||
from rest_framework.request import Request
|
from rest_framework.request import Request
|
||||||
from rest_framework.schemas.openapi import AutoSchema, SchemaGenerator
|
from rest_framework.schemas.openapi import AutoSchema, SchemaGenerator
|
||||||
|
|
||||||
|
@ -507,9 +507,16 @@ class TestOperationIntrospection(TestCase):
|
||||||
path = '/{id}/'
|
path = '/{id}/'
|
||||||
method = 'GET'
|
method = 'GET'
|
||||||
|
|
||||||
|
class CustomBrowsableAPIRenderer(BrowsableAPIRenderer):
|
||||||
|
media_type = 'image/jpeg' # that's a wild API renderer
|
||||||
|
|
||||||
|
class TextRenderer(BaseRenderer):
|
||||||
|
media_type = 'text/plain'
|
||||||
|
format = 'text'
|
||||||
|
|
||||||
class View(generics.CreateAPIView):
|
class View(generics.CreateAPIView):
|
||||||
serializer_class = views.ExampleSerializer
|
serializer_class = views.ExampleSerializer
|
||||||
renderer_classes = [JSONRenderer]
|
renderer_classes = [JSONRenderer, TextRenderer, BrowsableAPIRenderer, CustomBrowsableAPIRenderer]
|
||||||
|
|
||||||
view = create_view(
|
view = create_view(
|
||||||
View,
|
View,
|
||||||
|
@ -524,8 +531,8 @@ class TestOperationIntrospection(TestCase):
|
||||||
# schema support is there
|
# schema support is there
|
||||||
success_response = responses['200']
|
success_response = responses['200']
|
||||||
|
|
||||||
assert len(success_response['content'].keys()) == 1
|
# Check that the API renderers aren't included, but custom renderers are
|
||||||
assert 'application/json' in success_response['content']
|
assert set(success_response['content']) == {'application/json', 'text/plain'}
|
||||||
|
|
||||||
def test_openapi_yaml_rendering_without_aliases(self):
|
def test_openapi_yaml_rendering_without_aliases(self):
|
||||||
renderer = OpenAPIRenderer()
|
renderer = OpenAPIRenderer()
|
||||||
|
|
Loading…
Reference in New Issue
Block a user