Awesome
<p align="center"> <a title="hdl/packages GitHub repository" href="https://github.com/hdl/packages"><img src="https://img.shields.io/badge/hdl-packages-f2f1ef.svg?longCache=true&style=flat-square&logo=GitHub&logoColor=f2f1ef"></a><!-- --> <a title="hdl/community on gitter.im" href="https://gitter.im/hdl/community"><img src="https://img.shields.io/gitter/room/hdl/community.svg?longCache=true&style=flat-square&logo=gitter&logoColor=fff&color=4db797"></a><!-- --> </p>Smoke tests
As discussed in hdl/packages, there is a thriving activity for providing ready-to-use packages of open source electronic design automation (EDA) tooling: static build, dynamic builds, containers, Conda... Regardless of the packaging approach, most integration and distribution projects need to build each tool using some custom options, and then ensure that the produced artifacts are valid. Running full test suites included in project codebases is sometimes not possible, because CI services timeout. Nevertheless, EDA tools are expected to be thoroughly tested upstream; so, integrators need a set of quick sanity tests.
Existing third-party testsuites and examples typically require additional dependencies for testing multiple tools at the same time. However, integration/distribution strategies do not always build all the tools in the same environment. Therefore, a fine grained approach to test definition is required. In analogy to electrical smoke testing, smoke testing (software) is a subset of test cases that cover the most important functionality of a software tool. This repository contains smoke tests for the following tools:
- Boolector
- GHDL
- GTKWave
- icestorm
- Icarus Verilog
- KLayout
- nextpnr
- Project Oxide
- Project Trellis
- SymbiYosys
- Verilator
- VTR
- Yices 2
- Yosys
- Z3
- Board programming:
To Do:
- cocotb
- ghdl-yosys-plugin
- netlistsvg
- sigrok-cli
- Surelog
- Verible
- VUnit
- Board programming: