Skip to content

Commit

Permalink
Merge pull request #52 from edoburu/bugfix/inheritance-diagram
Browse files Browse the repository at this point in the history
Fix rendering of inheritance diagrams
  • Loading branch information
timobrembeck committed Sep 26, 2023
2 parents c26bf9f + be8c151 commit 0421d7e
Show file tree
Hide file tree
Showing 5 changed files with 25 additions and 2 deletions.
1 change: 1 addition & 0 deletions CHANGES.rst
Expand Up @@ -5,6 +5,7 @@ Unreleased
----------

* Drop support for sphinx < 3.4.0
* [ `#45 <https://github.com/edoburu/sphinxcontrib-django/issues/45>`_ ] Fix rendering of inheritance diagrams


Version 2.4 (2023-07-02)
Expand Down
4 changes: 3 additions & 1 deletion sphinxcontrib_django/docstrings/classes.py
Expand Up @@ -104,7 +104,9 @@ def improve_model_docstring(app: Sphinx, model: models.Model, lines: list[str])
and "sphinx.ext.graphviz" in app.extensions
and not any("inheritance-diagram::" in line for line in lines)
):
lines.append(".. inheritance-diagram::") # pragma: no cover
lines.append("")
lines.append(f".. inheritance-diagram:: {model.__module__}.{model.__name__}")
lines.append("")


def add_db_table_name(app: Sphinx, model: models.Model, lines: list[str]) -> None:
Expand Down
6 changes: 5 additions & 1 deletion tests/roots/test-docstrings/conf.py
Expand Up @@ -5,7 +5,11 @@
sys.path.insert(0, os.path.abspath("."))

project = "sphinx dummy Test"
extensions = ["sphinxcontrib_django"]
extensions = [
"sphinxcontrib_django",
"sphinx.ext.graphviz",
"sphinx.ext.inheritance_diagram",
]

# Configure Django settings module
django_settings = "dummy_django_app.settings"
Expand Down
14 changes: 14 additions & 0 deletions tests/test_class_docstrings.py
Expand Up @@ -81,6 +81,8 @@ def test_simple_model(app, do_autodoc):
" :class:`~dummy_django_app.models.ChildModelB`"
),
"",
" .. inheritance-diagram:: dummy_django_app.models.SimpleModel",
"",
]


Expand Down Expand Up @@ -168,6 +170,8 @@ def test_database_table(app, do_autodoc):
" :class:`~dummy_django_app.models.ChildModelB`"
),
"",
" .. inheritance-diagram:: dummy_django_app.models.SimpleModel",
"",
]


Expand Down Expand Up @@ -199,6 +203,8 @@ def test_abstract_model(app, do_autodoc):
" :class:`~dummy_django_app.models.AbstractModel`"
),
"",
" .. inheritance-diagram:: dummy_django_app.models.AbstractModel",
"",
]


Expand Down Expand Up @@ -232,6 +238,8 @@ def test_abstract_model_with_tables_names_and_ignore_abstract(app, do_autodoc):
" :class:`~dummy_django_app.models.AbstractModel`"
),
"",
" .. inheritance-diagram:: dummy_django_app.models.AbstractModel",
"",
]


Expand Down Expand Up @@ -272,6 +280,8 @@ def test_abstract_model_with_tables_names_and_abstract_show(app, do_autodoc):
" :class:`~dummy_django_app.models.AbstractModel`"
),
"",
" .. inheritance-diagram:: dummy_django_app.models.AbstractModel",
"",
]


Expand Down Expand Up @@ -300,6 +310,8 @@ def test_file_model(app, do_autodoc):
" :class:`~dummy_django_app.models.SimpleModel`"
),
"",
" .. inheritance-diagram:: dummy_django_app.models.FileModel",
"",
]


Expand Down Expand Up @@ -339,6 +351,8 @@ def test_tagged_item(app, do_autodoc):
" :class:`~django.contrib.contenttypes.models.ContentType`"
),
"",
" .. inheritance-diagram:: dummy_django_app.models.TaggedItem",
"",
]


Expand Down
2 changes: 2 additions & 0 deletions tests/test_django_configured.py
Expand Up @@ -15,4 +15,6 @@ def test_django_configured(app, do_autodoc):
" :param id: Primary key: ID",
" :type id: ~django.db.models.AutoField",
"",
" .. inheritance-diagram:: dummy_django_app.models.MonkeyPatched",
"",
]

0 comments on commit 0421d7e

Please sign in to comment.