flow-go
flow-go copied to clipboard
[Dynamic Protocol State | M2] KV store versioning integration test
Context
Upgrading process of key-value store in central piece of logic which will be used to extend the KV store and generally update software. To properly test upgrading logic we can implement an integration test which will test the whole pipeline starting from emitting the version upgrade service event and ending with reaching activation view and ensuring that version has been switched. It's also beneficial to test that old nodes stop when reaching protocol version that is not supported by their software.
Definition of Done
- Write an integration test for upgrading version of KV store.
- Ensure that version has been upgraded and nodes successfully increased their current version.
- Ensure that nodes that are on version newer than latest supported version has been terminated with expected error message.