Coverage for /var/srv/projects/api.amasfac.comuna18.com/tmp/venv/lib/python3.9/site-packages/rest_framework/documentation.py: 94%

16 statements  

« prev     ^ index     » next       coverage.py v6.4.4, created at 2023-07-17 14:22 -0600

1from django.urls import include, path 

2 

3from rest_framework.renderers import ( 

4 CoreJSONRenderer, DocumentationRenderer, SchemaJSRenderer 

5) 

6from rest_framework.schemas import SchemaGenerator, get_schema_view 

7from rest_framework.settings import api_settings 

8 

9 

10def get_docs_view( 

11 title=None, description=None, schema_url=None, urlconf=None, 

12 public=True, patterns=None, generator_class=SchemaGenerator, 

13 authentication_classes=api_settings.DEFAULT_AUTHENTICATION_CLASSES, 

14 permission_classes=api_settings.DEFAULT_PERMISSION_CLASSES, 

15 renderer_classes=None): 

16 

17 if renderer_classes is None: 17 ↛ 20line 17 didn't jump to line 20, because the condition on line 17 was never false

18 renderer_classes = [DocumentationRenderer, CoreJSONRenderer] 

19 

20 return get_schema_view( 

21 title=title, 

22 url=schema_url, 

23 urlconf=urlconf, 

24 description=description, 

25 renderer_classes=renderer_classes, 

26 public=public, 

27 patterns=patterns, 

28 generator_class=generator_class, 

29 authentication_classes=authentication_classes, 

30 permission_classes=permission_classes, 

31 ) 

32 

33 

34def get_schemajs_view( 

35 title=None, description=None, schema_url=None, urlconf=None, 

36 public=True, patterns=None, generator_class=SchemaGenerator, 

37 authentication_classes=api_settings.DEFAULT_AUTHENTICATION_CLASSES, 

38 permission_classes=api_settings.DEFAULT_PERMISSION_CLASSES): 

39 renderer_classes = [SchemaJSRenderer] 

40 

41 return get_schema_view( 

42 title=title, 

43 url=schema_url, 

44 urlconf=urlconf, 

45 description=description, 

46 renderer_classes=renderer_classes, 

47 public=public, 

48 patterns=patterns, 

49 generator_class=generator_class, 

50 authentication_classes=authentication_classes, 

51 permission_classes=permission_classes, 

52 ) 

53 

54 

55def include_docs_urls( 

56 title=None, description=None, schema_url=None, urlconf=None, 

57 public=True, patterns=None, generator_class=SchemaGenerator, 

58 authentication_classes=api_settings.DEFAULT_AUTHENTICATION_CLASSES, 

59 permission_classes=api_settings.DEFAULT_PERMISSION_CLASSES, 

60 renderer_classes=None): 

61 docs_view = get_docs_view( 

62 title=title, 

63 description=description, 

64 schema_url=schema_url, 

65 urlconf=urlconf, 

66 public=public, 

67 patterns=patterns, 

68 generator_class=generator_class, 

69 authentication_classes=authentication_classes, 

70 renderer_classes=renderer_classes, 

71 permission_classes=permission_classes, 

72 ) 

73 schema_js_view = get_schemajs_view( 

74 title=title, 

75 description=description, 

76 schema_url=schema_url, 

77 urlconf=urlconf, 

78 public=public, 

79 patterns=patterns, 

80 generator_class=generator_class, 

81 authentication_classes=authentication_classes, 

82 permission_classes=permission_classes, 

83 ) 

84 urls = [ 

85 path('', docs_view, name='docs-index'), 

86 path('schema.js', schema_js_view, name='schema-js') 

87 ] 

88 return include((urls, 'api-docs'), namespace='api-docs')