Cut over from in-repo prism_report to pytest-prism v0.1.0 - #741
Open
tfcollins wants to merge 9 commits into
Open
Cut over from in-repo prism_report to pytest-prism v0.1.0#741tfcollins wants to merge 9 commits into
tfcollins wants to merge 9 commits into
Conversation
- Move pytest_prism imports to top of adi/prism_adapters/capture.py - Move RenderContext import to top of adi/prism_adapters/iq.py - Fix E226 whitespace in division operator (/ 1e6) - Insert license headers on all Phase 2-touched files
tfcollins
force-pushed
the
prism-pytest-cutover
branch
from
May 22, 2026 19:40
b975e5a to
d25947a
Compare
|
Generated documentation for this PR is available at Link |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
test/plugins/prism_report/plugin with the new externalpytest-prismpackage; the generic plumbing now lives in the prism monorepo and is consumed via setuptools entry points.adi/prism_adapters/:IQRenderer(kind =adi.iq) andADIDUTHook(session hook for labgrid + dmesg + iio_info), wrapping the existinganalyze.py/render.py/capture.pylogic. No behavior change in the analyzer or capture paths.pyproject.tomlto addpytest-prism>=0.1,<0.2to theprism_reportextra and declare the two entry points (pytest_prism.renderers→IQRenderer,pytest_prism.session_hooks→ADIDUTHook).do_html_logblocks intest/dma_tests.pyfrompytest.data_log = {...}to_prism_attach("adi.iq", {...})(try/import-shimmed so non-prism users don't break)."test.plugins.prism_report.plugin"fromtest/conftest.py'spytest_plugins(entry-point discovery handles registration now).test/plugins/prism_report/entirely (~26 files, ~2,500 lines removed). Bench-Pluto goldens move toadi/prism_adapters/tests/bench/with the new per-kind path layout (cases/<id>/adi.iq/spectrum.html).Net diff: +1,138 / −2,350. The repo gets meaningfully smaller and the IQ/labgrid domain code is no longer entangled with pytest plumbing.
Spec + plan in the workspace-sibling
docs/superpowers/{specs,plans}/2026-05-02-prism-pytest-extraction-*.md.Test plan
make testsandmake etests(no regressions; emu-mode tests don't exercise thedo_html_logpath because loopback tests are gated to real hardware — that's pre-existing).python -m pytest adi/prism_adapters/tests/passes 26 + 1 skipped (bench-Pluto skipped without hardware).pytest test/test_pluto_p.py --prism-report --prism-out=./outand verify the output dir containscases/<safe_id>/adi.iq/{spectrum.html,spectrum.json,iq.npz,metrics.json}and amanifest.jsonwithschema_version: 2.--prism-url=... --prism-email=... --prism-password=... --prism-project=...and verify the run shows up with inline-rendered spectrum HTML.Depends on
tfcollins/prismin the prism repo:pytest-prismv0.1.0 must be installable. While operator finishes the PyPI upload, install editable fromprism/clients/python-pytest/first.Operator-pending follow-ups (out of PR scope)
git tag prism-pytest-cutover && git push origin prism-pytest-cutover.