Skip to content

test: add dual DB engine test coverage with RocksDB support#6579

Closed
vividctrlalt wants to merge 1 commit intotronprotocol:developfrom
vividctrlalt:test/dual-db-engine-coverage
Closed

test: add dual DB engine test coverage with RocksDB support#6579
vividctrlalt wants to merge 1 commit intotronprotocol:developfrom
vividctrlalt:test/dual-db-engine-coverage

Conversation

@vividctrlalt
Copy link
Contributor

Summary

  • Refactor config validation to support dual-engine (LevelDB/RocksDB) test override
  • Add BaseMethodTest for per-method Spring context isolation
  • Unify DB tests with parameterized dual-engine coverage
  • Migrate 176+ BaseTest subclasses to support dual DB engine override
  • Fix flaky tests (TrieTest, ConditionallyStopTest, NeedBeanCondition null safety)
  • Add ARM64 RocksDB engine test support
  • Add RocksDB engine test step to PR check workflow
  • Centralize config file constants in TestEnv

Motivation

Currently, java-tron's test suite only runs against LevelDB. This PR adds RocksDB as a second test engine, ensuring both storage backends are covered by CI. It also fixes several flaky tests and improves test isolation with BaseMethodTest.

Test plan

  • All existing tests pass with LevelDB (default)
  • All migrated tests pass with RocksDB engine override
  • ARM64 platform tested with RocksDB
  • CI workflow includes RocksDB test step
  • Flaky tests fixed and verified stable

- Refactor config validation to support dual-engine (LevelDB/RocksDB) test override
- Add BaseMethodTest for per-method Spring context isolation
- Unify DB tests with parameterized dual-engine coverage
- Migrate 176+ BaseTest subclasses to support dual DB engine override
- Fix flaky tests (TrieTest, ConditionallyStopTest, NeedBeanCondition null safety)
- Add ARM64 RocksDB engine test support
- Add RocksDB engine test step to PR check workflow
- Centralize config file constants in TestEnv
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant