Skip to content

Commit

Permalink
🔧 Add tests for documentation
Browse files Browse the repository at this point in the history
* Fix syntax in a code-block
  • Loading branch information
veit committed May 2, 2024
1 parent 996667e commit 4891f10
Show file tree
Hide file tree
Showing 10 changed files with 112 additions and 94 deletions.
31 changes: 31 additions & 0 deletions .github/workflows/ci.yml
@@ -0,0 +1,31 @@
name: ci

on:
pull_request:
push:
branches: [main]

jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v3
- uses: actions/cache@v3
with:
path: ~/.cache/pre-commit
key: pre-commit|${{ env.pythonLocation }}|${{ hashFiles('.pre-commit-config.yaml') }}
- uses: pre-commit/action@v3.0.1

docs:
name: Build docs and run doctests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
cache: pip
# Keep in sync with .readthedocs.yaml
python-version: 3.12
- run: python -m sphinx -nb html docs/ docs/_build/html
- run: python -m sphinx -b linkcheck docs/ docs/_build/html
18 changes: 0 additions & 18 deletions .github/workflows/pre-commit.yml

This file was deleted.

13 changes: 10 additions & 3 deletions .pre-commit-config.yaml
Expand Up @@ -24,6 +24,13 @@ repos:
- repo: https://github.com/sphinx-contrib/sphinx-lint
rev: v0.9.1
hooks:
- id: sphinx-lint
args: [--jobs=1]
types: [rst]
- id: sphinx-lint
args: [--jobs=1]
types: [rst]
- repo: https://github.com/adamchainz/blacken-docs
rev: "v1.12.1"
hooks:
- id: blacken-docs
args: [--line-length=79]
additional_dependencies:
- black
7 changes: 2 additions & 5 deletions docs/document/docstrings.rst
Expand Up @@ -21,10 +21,7 @@ Sphinx-Konfigurationsdatei ``docs/conf.py`` angegeben:

.. code-block:: python
extensions = [
'sphinx.ext.autodoc',
...
]
extensions = ["sphinx.ext.autodoc", ...]
Wenn euer Paket und die zugehörige Dokumentation Teil desselben Repositorys
sind, werden sie immer dieselbe relative Position im Dateisystem haben. In
Expand All @@ -33,7 +30,7 @@ bearbeiten, um den relativen Pfad zum Paket anzugeben, also:

.. code-block:: python
sys.path.insert(0, os.path.abspath('..'))
sys.path.insert(0, os.path.abspath(".."))
import requests
Wenn ihr eure Sphinx-Dokumentation in einer virtuellen Umgebung installiert
Expand Down
8 changes: 3 additions & 5 deletions docs/document/extensions.rst
Expand Up @@ -107,12 +107,10 @@ aussehen:
import sys
import os
sys.path.insert(0, os.path.abspath('exts'))
extensions = [
'foo',
...
]
sys.path.insert(0, os.path.abspath("exts"))
extensions = ["foo", ...]
.. seealso::
* `Developing extensions for Sphinx
Expand Down
111 changes: 54 additions & 57 deletions docs/document/uml/index.rst
@@ -1,57 +1,54 @@
Unified Modeling Language (UML)
===============================

Installation
------------

#. Installiert `plantuml <https://plantuml.com/starting>`_:

.. tab:: Linux

.. code-block:: console
$ sudo apt install plantuml
.. tab:: macOS

.. code-block:: console
$ brew install plantuml
#. Installiert `sphinxcontrib-plantuml
<https://pypi.org/project/sphinxcontrib-plantuml/>`_:

.. tab:: Linux/macOS

.. code-block:: console
$ bin/python -m pip install sphinxcontrib-plantuml
.. tab:: Windows

.. code-block:: ps1con
C:> Scripts\python -m pip install sphinxcontrib-plantuml
#. Konfiguriert Sphinx in der ``conf.py``-Datei:

.. code-block:: python
extensions = [
...,
'sphinxcontrib.plantuml',
]
plantuml = '/PATH/TO/PLANTUML'
.. note::
Auch in Windows werden in der Pfadangabe ``/`` angegeben.

.. toctree::
:titlesonly:
:hidden:

sequence-diagram
use-case-diagram
activity-diagram
class-diagram
Unified Modeling Language (UML)
===============================

Installation
------------

#. Installiert `plantuml <https://plantuml.com/starting>`_:

.. tab:: Linux

.. code-block:: console
$ sudo apt install plantuml
.. tab:: macOS

.. code-block:: console
$ brew install plantuml
#. Installiert `sphinxcontrib-plantuml
<https://pypi.org/project/sphinxcontrib-plantuml/>`_:

.. tab:: Linux/macOS

.. code-block:: console
$ bin/python -m pip install sphinxcontrib-plantuml
.. tab:: Windows

.. code-block:: ps1con
C:> Scripts\python -m pip install sphinxcontrib-plantuml
#. Konfiguriert Sphinx in der ``conf.py``-Datei:

.. code-block:: python
extensions = [..., "sphinxcontrib.plantuml"]
plantuml = "/PATH/TO/PLANTUML"
.. note::
Auch in Windows werden in der Pfadangabe ``/`` angegeben.

.. toctree::
:titlesonly:
:hidden:

sequence-diagram
use-case-diagram
activity-diagram
class-diagram
4 changes: 2 additions & 2 deletions docs/test/coverage.rst
Expand Up @@ -218,7 +218,7 @@ enthalten, der so oder so ähnlich aussieht:

.. code-block:: python
if __name__ == '__main__':
if __name__ == "__main__":
main()
Dieser Befehl weist Python an, :func:`main()` auszuführen, wenn wir das Modul
Expand All @@ -228,7 +228,7 @@ einer einfachen Pragma-Anweisung vom Testen ausgeschlossen:

.. code-block:: python
if __name__ == '__main__': # pragma: no cover
if __name__ == "__main__": # pragma: no cover
main()
Damit wird Coverage.py angewiesen, entweder eine einzelne Zeile oder einen
Expand Down
2 changes: 2 additions & 0 deletions docs/test/pytest/fixtures.rst
Expand Up @@ -753,6 +753,8 @@ einem Namensparameter an ``@pytest.fixture()``:
from items import cli
@pytest.fixture(scope="session", name="db")
def _db():
"""The db object"""
Expand Down
8 changes: 6 additions & 2 deletions docs/test/pytest/params.rst
Expand Up @@ -51,14 +51,18 @@ oder sogar schon "done" sein. Lasst uns alle drei testen:
def test_finish_from_in_prog(items_db):
index = items_db.add_item(Item("Update pytest section", state="in progress"))
index = items_db.add_item(
Item("Update pytest section", state="in progress")
)
items_db.finish(index)
item = items_db.get_item(index)
assert item.state == "done"
def test_finish_from_done(items_db):
index = items_db.add_item(Item("Update cibuildwheel section", state="done"))
index = items_db.add_item(
Item("Update cibuildwheel section", state="done")
)
items_db.finish(index)
item = items_db.get_item(index)
assert item.state == "done"
Expand Down
4 changes: 2 additions & 2 deletions docs/test/unittest2.rst
Expand Up @@ -16,8 +16,8 @@ vereinfachen:
import unittest2 as unittest
class MyTest(unittest.TestCase):
...
class MyTest(unittest.TestCase): ...
Auf diese Weise könnt ihr, wenn ihr zu einer neueren Python-Version wechselt und
das Modul ``unittest2`` nicht mehr benötigt, einfach den Import in eurem
Expand Down

0 comments on commit 4891f10

Please sign in to comment.