70 Commits
Author SHA1 Message Date
jakob.scheid 6ddbd17497 refactor(utils)!: move markdown_table to utility module
Moved the markdown_table utility function from the Python documentation
generator core module to the utility module. The public exports
definition of the utility module and all imports were updated.

The test module was also moved to the appropriate new path and the
testing functions were renamed.
2026-10-21 13:02:36 +02:00
jakob.scheid 36bc14185a refactor(utils)!: move fit_row_length to utility module
Moved the _fit_row_length function from the Python generator core module
to fit_row_length in the utility module. The public exports definition
of the utility module and all imports were updated.

The test module was also moved to the appropriate new path and the
testing functions were renamed.
2026-10-21 13:01:28 +02:00
jakob.scheid a6b5e8f1c9 fix(markdown): escape pipe characters in table cells
Pipe characters ('|') in Markdown table cells are now replaced with an
escape sequence ('\|') to ensure that cells are not split by Markdown
renderers.

Tests which expected pipe characters to be unescaped, which is
incorrect, were updatedto expect an escape sequence and new test cases
to ensure the correct escaping behavior were added.
2026-10-21 12:15:53 +02:00
jakob.scheid 03fa81f0df fix(python-generator): ignore invalid namespaces
Python modules or packages are now ignored if their name is not a valid
Python namespace name.
2026-10-04 16:54:48 +02:00
jakob.scheid efa2dbf724 test(python-namespaces): add test for namespace name validation 2026-10-04 16:47:33 +02:00
jakob.scheid 0f8f9d3cfa feat(python-namespaces)!: add validation for namespace names
Added more strict validation for namespaces names to PythonNamespace
than before and updated error messages.
All tests depending on this were updated to the new behavior.
2026-10-04 16:39:31 +02:00
jakob.scheid fe40b672da test(python-generator): add test data for namespace conflict preventing
Added a package with the same name as a module to a test Python project.
2026-09-29 18:13:28 +02:00
jakob.scheid 896bfcc2dd style: use target version practices 2026-09-28 00:04:53 +02:00
jakob.scheid b2a7c9a0e3 style: fix lines which exceed the line length limit 2026-09-28 00:04:44 +02:00
jakob.scheid ac72eb283c style: organize imports
Organized imports according to Ruff (I001).
2026-09-27 22:23:58 +02:00
jakob.scheid 3865db7919 test(python-generator): add test cases for package namespace comparision
Added test cases with different types for Python package namespace
comparision test.
2026-09-27 22:16:15 +02:00
jakob.scheid f102fa80ce test(python-generator): add test cases for module namespace comparision
Added test cases with different types for Python module namespace
comparision test.
2026-09-27 22:15:55 +02:00
jakob.scheid f2b9f47e09 test(cli): add tests for Python force overwriting
Added a test to the CLI test file for the documentation generation
error.
2026-09-27 17:36:04 +02:00
jakob.scheid d8508e0fa3 test(python-generator): add tests for force overwriting
Added tests to test new output directory deletion behavior:
  - output directory overwriting (not empty; force)
  - error (not empty; not force)
  - nothing (empty; force)
  - nothing (empty; not force)
One test was adapted to output directory emptiness check because the
.gitkeep file which is required for Git to track the directory makes it
non-empty.
2026-09-27 15:09:17 +02:00
jakob.scheid c40e965d8d test(python-generator): update tests to do not assume src/ directories
Updated tests to do not implicitly assume a 'src/' directory structure
and removed all 'src/' subdirectory structures in test project
directories (if possible).
2026-09-22 19:26:55 +02:00
jakob.scheid ec156a538e test(python-generator): add test for directory creation
Added a testing function which tests whether the documentation directory
is created when the documentation is generated.
2026-09-22 17:04:56 +02:00
jakob.scheid b6d2fa7db8 test(python-generator): name testing function correctly 2026-09-22 16:47:18 +02:00
jakob.scheid 17c5e4938f test(python-generator): update tests for PEP 8 compliance
Updated test cases to the new default value PEP 8 compliance and added
new test cases to test the new behavior.
2026-09-22 16:13:23 +02:00
jakob.scheid 0e81d0b9ca refactor(python-generator): rename misnamed testing function
Renamed 'test_PythonPackageNamespace___getitem__' to
'test_PythonPackageNamespace_add'.
2026-09-21 22:12:00 +02:00
jakob.scheid de3eac3bb1 chore: lint source code using Ruff 2026-09-21 20:10:09 +02:00
jakob.scheid aa4a139878 style: format source code using Ruff 2026-09-21 20:10:04 +02:00
jakob.scheid 475775eb7e style: ensure trailing commas in multi-line statements 2026-09-18 22:18:13 +02:00
jakob.scheid 23e450e9df style: remove trailing whitespace
Removed all trailing whitespace.
2026-09-18 17:02:09 +02:00
jakob.scheid caa8e04047 style: limit line length to 79 characters
Limited the lengths of all lines to 79 characters (if possible).
Additionally, some other lines were breaked for consistence.
2026-09-18 16:57:45 +02:00
jakob.scheid bd7780f112 test(cli): add tests for Python sections list parser 2026-09-13 19:04:55 +02:00
jakob.scheid 84fe67230f test(cli): add tests for the CLI 2026-09-13 19:04:41 +02:00
jakob.scheid d54c0fb208 refactor: remove or update all instances of ExistingFile and ExistingDirectory in tests 2026-09-05 14:29:31 +02:00
jakob.scheid 3428c54d99 style: ensure trailing newlines 2026-09-01 16:54:03 +02:00
jakob.scheid 44f80dbb6a Update licenses 2026-04-30 19:28:53 +02:00
jakob.scheid 14380b6515 Update licenses 2026-04-30 19:27:32 +02:00
jakob.scheid 3315448fc5 Add tests for the Python project documentation generator 2026-04-27 22:17:29 +02:00
jakob.scheid a17e56fb3d Add Python module documentation generator 2026-04-25 19:34:34 +02:00
jakob.scheid ecd3f7e76b Generalize tests for core.python.PythonDocumentationGenerator exception 2026-04-19 19:51:50 +02:00
jakob.scheid f581774649 Add function to get the path segments of a path relative to another 2026-04-19 19:38:30 +02:00
jakob.scheid 3fd51d126f Add Python definition documentation generator 2026-04-19 19:12:33 +02:00
jakob.scheid 3b45c1a8ed Add function to ensure a non-empty string. 2026-04-19 19:10:45 +02:00
jakob.scheid 16852f3d68 Add class for Python docstrings 2026-04-13 14:15:49 +02:00
jakob.scheid 7f02b5b7ec Add tests for core.python.arguments.PythonFunctionArgument.signature_repr 2026-04-13 12:24:52 +02:00
jakob.scheid a8626418da Add feature to get the signature representation of a Python function argument 2026-04-13 12:19:08 +02:00
jakob.scheid a79b538de8 Add class for Python modules 2026-04-13 09:24:36 +02:00
jakob.scheid 8c3866a948 Bug fix: remove invalid test cases 2026-04-12 19:40:32 +02:00
jakob.scheid ed3b47bd81 Bug fix: add support for default values in core.python.arguments.PythonASTArgumentsListParser.to_argument_list 2026-04-12 19:30:04 +02:00
jakob.scheid e4fe88b60b Remove core.python.arguments.PythonFunctionArgumentDefault; use strings instead 2026-04-12 19:13:39 +02:00
jakob.scheid 73730520c1 Remove core.python.arguments.PythonFunctionArgumentDefault; use strings instead 2026-04-12 18:54:51 +02:00
jakob.scheid d6a35ea222 Add classes for Python definitions 2026-04-12 18:49:23 +02:00
jakob.scheid d8fd2b1948 Bug fix: core.python.arguments.PythonASTArgumentsListParser.to_argument_list failed if a type annotation is not a single name 2026-04-11 15:56:14 +02:00
jakob.scheid 91cecae230 Add classes for Python function arguments 2026-04-11 13:33:42 +02:00
jakob.scheid d0e4ae54c3 Bug fix: remove debug output 2026-04-10 17:19:35 +02:00
jakob.scheid d3e022fb13 Add licenses to the tests 2026-04-10 12:37:59 +02:00
jakob.scheid 3e96072361 Add class for existing files 2026-04-09 19:52:46 +02:00