Commit Graph

8 Commits

Author SHA1 Message Date
Copilot
4b87556135 Add comprehensive test suite for PeakRDL-BusDecoder with sub-block and integration tests (#6)
* Initial plan

* Add comprehensive test suite for PeakRDL-BusDecoder

- Added tests for utility functions (clog2, is_pow2, roundup_pow2, get_indexed_path)
- Added tests for body classes (Body, ForLoopBody, IfBody, CombinationalBody, StructBody)
- Added tests for code generators (DecodeLogicGenerator, StructGenerator)
- Added tests for DesignState configuration
- Added integration tests for BusDecoderExporter
- Added tests for APB4 interface generation
- Fixed conftest to properly handle RDLCompiler and temporary files
- All 56 tests passing

Co-authored-by: arnavsacheti <36746504+arnavsacheti@users.noreply.github.com>

* Format test files with ruff

Co-authored-by: arnavsacheti <36746504+arnavsacheti@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: arnavsacheti <36746504+arnavsacheti@users.noreply.github.com>
2025-10-23 22:26:03 -07:00
Copilot
2ca1ce4e27 Fix --unroll CLI argument to properly unroll arrays instead of repeating them (#5)
* Initial plan

* Fix --unroll CLI argument to properly unroll arrays

Updated check_is_array() method and all CPUIF implementations to correctly detect and handle unrolled array elements. When unroll=True, each array element is now treated as an individual instance instead of being repeated as an array.

Co-authored-by: arnavsacheti <36746504+arnavsacheti@users.noreply.github.com>

* Add comprehensive tests for --unroll functionality

Created tests to verify that array elements are correctly unrolled into individual instances when --unroll flag is used. Also fixed conftest.py fixture to keep temp files for later reference.

Co-authored-by: arnavsacheti <36746504+arnavsacheti@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: arnavsacheti <36746504+arnavsacheti@users.noreply.github.com>
2025-10-23 22:23:49 -07:00
Arnav Sacheti
bafebf8595 refactor to use base listener for busdecoder 2025-10-19 21:35:17 -07:00
Arnav Sacheti
cca98098da Simplify test suite to pytest unit scaffolding 2025-10-19 16:48:25 -07:00
Arnav Sacheti
ff237150f4 consolidate common action setup + migrate to ruff and pyrefly 2025-10-13 19:31:39 -07:00
Arnav Sacheti
35015d7051 "updt" 2025-10-13 18:39:19 -07:00
Arnav Sacheti
b4f9eaff71 regblock -> busdecoder 2025-10-10 22:30:59 -07:00
Arnav Sacheti
9bf5cd1e68 Initial Commit - Forked from PeakRDL-regblock @ a440cc19769069be831d267505da4f3789a26695 2025-10-10 22:28:36 -07:00