You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A specifically written vm integration testing framework would be useful to reduce the boilerplate when writing tests targeting the vm only. This would have several benefits over e2e testing such as speed and less boilerplate, but also complexity. It would be used in a different context than action parametrized testing because it would let the implementer have more control over the vm, send transactions and observe their intended functioning.
It would be used in a way that completely abstracts other components such as the networking, builder, state, etc.
Some work has been started in the integration_vm_simulator branch.
It defines a barebone TestVM that can be used to send transactions and apply results to the state.
It also supports snapshots, which can be used to rollback to a specific point in time while retrieving the current environment and state. Again, in an effort to avoid too much boilerplate and favor fixture-based testing.
LiteSVM and Bankrun are both wrappers on top of solana-program-test which also targets testing the vm. solana-validator-test is focusing on e2e testing where transactions are sent to an actual node, that is a different use-case.
The text was updated successfully, but these errors were encountered:
A specifically written vm integration testing framework would be useful to reduce the boilerplate when writing tests targeting the vm only. This would have several benefits over e2e testing such as speed and less boilerplate, but also complexity. It would be used in a different context than action parametrized testing because it would let the implementer have more control over the vm, send transactions and observe their intended functioning.
It would be used in a way that completely abstracts other components such as the networking, builder, state, etc.
Some work has been started in the integration_vm_simulator branch.
It defines a barebone
TestVM
that can be used to send transactions and apply results to the state.It also supports snapshots, which can be used to rollback to a specific point in time while retrieving the current environment and state. Again, in an effort to avoid too much boilerplate and favor fixture-based testing.
Inspirations from LiteSVM, bankrun, solana-program-test, solana-validator-test
LiteSVM
andBankrun
are both wrappers on top ofsolana-program-test
which also targets testing the vm.solana-validator-test
is focusing on e2e testing where transactions are sent to an actual node, that is a different use-case.The text was updated successfully, but these errors were encountered: