Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
eb63a54
Add doctests to CI pipeline and fix broken doctests
KostaIlic2 Dec 19, 2025
8311cb4
Add acceptance tests to CI pipeline
KostaIlic2 Dec 19, 2025
eefedf4
Update .github/workflows/run_unit_tests.yml in hopes of achieving the…
KostaIlic2 Jan 6, 2026
cb67d14
Fix broken doctests by removing __doctest_requires__ with numpy>=2.0
KostaIlic2 Jan 7, 2026
6b32f62
Revert removal of __doctest_requires__ statements
KostaIlic2 Jan 7, 2026
cf220dc
Replace __doctest_requires__ with inline version checks
KostaIlic2 Jan 7, 2026
1867554
Fix line length linting errors (W505)
KostaIlic2 Jan 7, 2026
86ff250
Fix remaining W505 linting errors
KostaIlic2 Jan 7, 2026
47125f3
Fix black formatting (BLK100)
KostaIlic2 Jan 7, 2026
55ec0fd
Clean up documentation by removing version checks from docstrings
KostaIlic2 Jan 8, 2026
617581e
Fix BLK100 formatting in complex module
KostaIlic2 Jan 8, 2026
737ba89
Fix module import issues caused by module-level pytest.skip
KostaIlic2 Jan 8, 2026
75e4e43
Fix BLK100 and W505 formatting issues in complex module
KostaIlic2 Jan 8, 2026
32e86e0
Revert to inline doctest version checks due to pytest-doctestplus bugs
KostaIlic2 Jan 8, 2026
b997f98
Fix W505 line length violations in comment lines
KostaIlic2 Jan 8, 2026
c396d47
Incremental improvements to the the doctest workarounds.
KostaIlic2 Jan 9, 2026
87a8b32
Revert doctest changes from _arguments.py and complex/__init__.py
KostaIlic2 Jan 9, 2026
de03ff7
Revert poetry.lock to original state because the changes do not seem …
KostaIlic2 Jan 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/run_unit_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ jobs:
run: poetry install -v
- name: Display installed dependency versions
run: poetry run pip list
- name: Run unit tests and code coverage
run: poetry run pytest ./tests/unit -v --cov=nitypes --junitxml=test_results/nitypes-${{ matrix.os }}-py${{ matrix.python-version }}.xml
- name: Run unit/acceptance/doc tests and code coverage
run: poetry run pytest -v --cov=nitypes --junitxml=test_results/nitypes-${{ matrix.os }}-py${{ matrix.python-version }}.xml
- name: Run benchmarks
run: poetry run pytest ./tests/benchmark -v --junitxml=test_results/nitypes-benchmarks-${{ matrix.os }}-py${{ matrix.python-version }}.xml
- name: Upload test results
Expand Down
2 changes: 1 addition & 1 deletion src/nitypes/waveform/_digital/_port.py
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ def _mask_to_column_indices(
[8]
>>> _mask_to_column_indices(0xDEADBEEF, 32, "little")
[0, 1, 2, 3, 5, 6, 7, 9, 10, 11, 12, 13, 15, 16, 18, 19, 21, 23, 25, 26, 27, 28, 30, 31]
>>> _mask_to_column_indices(-1, 8)
>>> _mask_to_column_indices(-1, 8, "little")
Traceback (most recent call last):
...
ValueError: The mask must be a non-negative integer.
Expand Down
4 changes: 2 additions & 2 deletions src/nitypes/waveform/_digital/_waveform.py
Original file line number Diff line number Diff line change
Expand Up @@ -273,10 +273,10 @@ class DigitalWaveform(Generic[TDigitalState]):
and the digital state from the actual and expected waveforms:

>>> result.failures[0] # doctest: +NORMALIZE_WHITESPACE
DigitalWaveformFailure(sample_index=0, expected_sample_index=0, signal_index=0, column_index=1,
DigitalWaveformFailure(sample_index=0, expected_sample_index=0, signal_index=0,
actual_state=<DigitalState.FORCE_UP: 1>, expected_state=<DigitalState.COMPARE_LOW: 3>)
>>> result.failures[1] # doctest: +NORMALIZE_WHITESPACE
DigitalWaveformFailure(sample_index=1, expected_sample_index=1, signal_index=0, column_index=1,
DigitalWaveformFailure(sample_index=1, expected_sample_index=1, signal_index=0,
actual_state=<DigitalState.FORCE_UP: 1>, expected_state=<DigitalState.COMPARE_LOW: 3>)

Timing information
Expand Down