It would be great to have a Test Provider or Devnet Provider , which abstracts the added capabilities of starknet-devnet-rs for the user.
Starknet devnet has testing specific APIs, like mining blocks, changing timestamps, connecting to an L1 node etc.
The API is documented here: https://0xspaceshard.github.io/starknet-devnet-rs/docs/api
An example from Ethereum is the integration of anvil API into alloy: https://alloy.rs/examples/anvil/deploy_contract_anvil.html
This would aid in creating testing environments that run on devnet without spinning up devnet in the background, but as part of the rust test suite.
Additional reference, devnet-js provider
https://github.com/0xSpaceShard/starknet-devnet-js
It would be great to have a
Test ProviderorDevnet Provider, which abstracts the added capabilities ofstarknet-devnet-rsfor the user.Starknet devnet has testing specific APIs, like mining blocks, changing timestamps, connecting to an L1 node etc.
The API is documented here: https://0xspaceshard.github.io/starknet-devnet-rs/docs/api
An example from Ethereum is the integration of
anvilAPI intoalloy: https://alloy.rs/examples/anvil/deploy_contract_anvil.htmlThis would aid in creating testing environments that run on
devnetwithout spinning up devnet in the background, but as part of the rust test suite.Additional reference, devnet-js provider
https://github.com/0xSpaceShard/starknet-devnet-js