0xMiden / 0xMiden/miden-vm

Unit tests for private MASM procedures

未關閉
#1,618 3 則留言 1 個 reaction 已指派 1 人 已指派給 @bitwalker 在 GitHub 檢視
assembly debugging
主要語言
Rust
星號
772
分支
352
平均合併
1 天 12 小時
30 天內合併 PR
93

描述

### Feature description

In miden-base, we would like to be able to write unit tests for private (non-`export`ed) MASM procedures.

Ideally we could write these unit tests as Rust tests (mostly for integration in the Rust test setup and because we can setup the environment a bit better in case tests fail and a developer needs to debug), but this requires the MASM procedures to be exported. For now, we might just export them, but longer term it would be nice to have a better way to do this.

In talking with @bobbinth, one idea was to use procedure annotations (#1434) to conditionally assemble procedures to be either `proc` in normal usage or `export` if we want to build a `MastForest` library to test these procedures through.

A similar idea is to write unit tests directly in MASM behind a `#[cfg(test)]` like flag through which we could assemble a MASM test program. This would keep the procedure definitions itself cleaner (without `cfg` annotations on each).

### Why is this feature needed?

Ensure correctness of MASM procedures.

貢獻指南

開啟貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。