Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactoring integration tests #1021

Open
5 tasks
jak-pan opened this issue Feb 8, 2025 · 0 comments
Open
5 tasks

Refactoring integration tests #1021

jak-pan opened this issue Feb 8, 2025 · 0 comments

Comments

@jak-pan
Copy link
Contributor

jak-pan commented Feb 8, 2025

Current integration test setup is very brittle and is not assuming full working blockchain. On top of this there are too many assertions unit testing what should already have been tested. It means that every time we add some new feature or change some feature, we can either break a lot of tests or in the opposite direction have unexpected consequences and possibly not see some changes happening. I am proposing to:

  • Setup proper chain environment that mimics real chain with proper block initialization and finalization sequences
  • Have proper state transition functions taking into account all of the internal interactions
  • Have a set of pre-defined transactions ready that will result in expected scenarios
  • Use all of the above to re-construct a set of lean integration tests without side effects and hacks
  • Improve test coverage while not testing unnecessary interactions which are covered by unit tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant