Pytest plugin to run FuseSoC simulation targets.
Project description
pytest-fusesoc
Why pytest-fusesoc plugin?
The pytest-fusesoc plugin allows you to use pytest to discover and run simulation targets defined in FuseSoC *.core files.
Furthermore, testing capabilities can be greatly enhanced with existing pytest plugins, built-in pytest features like fixtures, test parametrization @pytest.mark.parametrize, test reporting, and more.
How the pytest-fusesoc plugin works?
To begin, it recursively collects all FuseSoC *.core files from the directory where pytest was invoked.
Then, it collects all simulation targets from each collected FuseSoC core.
Each collected simulation target is represented as a standalone pytest test that invokes the fusesoc command with the required arguments during test execution.
Example output from the pytest --collect-only command:
<Dir my-awesome-hdl-project>
<Dir rtl>
<Dir adder>
<File adder.core>
<Target testbench-1>
<Target testbench-2>
<Dir alu>
<File alu.core>
<Target testbench-1>
<Target testbench-2>
Example pytest command to run specific testbench:
pytest -k 'adder.core and testbench-1'
Alternatively when using VLN (<vendor>:<library>:<name>) of FuseSoC core:
pytest -k 'john:mylib:adder and testbench-1'
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pytest_fusesoc-0.1.8.tar.gz.
File metadata
- Download URL: pytest_fusesoc-0.1.8.tar.gz
- Upload date:
- Size: 23.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
66dfe91d555aa648aadc8c292a8396636a8963adec415000ac5577861cd7354f
|
|
| MD5 |
3117019d5aa6456674ad684aada039ea
|
|
| BLAKE2b-256 |
782643bf9499bebe3b3af4effc1c41d7fd4628278f2aca141b13b4422e4ab563
|
File details
Details for the file pytest_fusesoc-0.1.8-py3-none-any.whl.
File metadata
- Download URL: pytest_fusesoc-0.1.8-py3-none-any.whl
- Upload date:
- Size: 14.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b6e854a60033c41106613a6a0063fe33b2ab60725085b90edc30ab12cfe6d852
|
|
| MD5 |
50663af486b883367a54db102bb18fac
|
|
| BLAKE2b-256 |
d460085c6a6c0cb0acca8f2d65afedfeb6fd483883e01ca8420f6ee45593dc85
|