diff --git a/rest_framework/compat.py b/rest_framework/compat.py index a085187aaf..ce821402e2 100644 --- a/rest_framework/compat.py +++ b/rest_framework/compat.py @@ -244,7 +244,7 @@ def pygments_css(style): class CodeBlockPreprocessor(Preprocessor): pattern = re.compile( - r'^\s*@@ (.+?) @@\s*(.+?)^\s*@@', re.M|re.S) + r'^\s*``` *([^\n]+)\n(.+?)^\s*```', re.M|re.S) formatter = HtmlFormatter() diff --git a/tests/test_description.py b/tests/test_description.py index a97550ed8d..b3e8b0f8bd 100644 --- a/tests/test_description.py +++ b/tests/test_description.py @@ -26,12 +26,12 @@ # hash style header # -@@ json @@ +``` json [{ "alpha": 1, "beta: "this is a string" }] -@@""" +```""" # If markdown is installed we also test it's working # (and that our wrapped forces '=' to h2 and '-' to h3) @@ -47,12 +47,11 @@


""" MARKED_DOWN_NOT_HILITE = """ -

@@ json @@ +

json [{ "alpha": 1, "beta: "this is a string" -}] -@@

""" +}]

""" # We support markdown < 2.1 and markdown >= 2.1 MARKED_DOWN_lt_21 = """

an example docstring

@@ -105,12 +104,12 @@ class MockView(APIView): # hash style header # - @@ json @@ + ``` json [{ "alpha": 1, "beta: "this is a string" }] - @@""" + ```""" assert MockView().get_view_description() == DESCRIPTION @@ -150,15 +149,16 @@ def test_markdown(self): Ensure markdown to HTML works as expected. """ if apply_markdown: + md_applied = apply_markdown(DESCRIPTION) gte_21_match = ( - apply_markdown(DESCRIPTION) == ( + md_applied == ( MARKED_DOWN_gte_21 % MARKED_DOWN_HILITE) or - apply_markdown(DESCRIPTION) == ( + md_applied == ( MARKED_DOWN_gte_21 % MARKED_DOWN_NOT_HILITE)) lt_21_match = ( - apply_markdown(DESCRIPTION) == ( + md_applied == ( MARKED_DOWN_lt_21 % MARKED_DOWN_HILITE) or - apply_markdown(DESCRIPTION) == ( + md_applied == ( MARKED_DOWN_lt_21 % MARKED_DOWN_NOT_HILITE)) assert gte_21_match or lt_21_match pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy