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
Introduce fuzz testing to separate unit tests from repetition tests
Prior to changes introduced here the majority of time during testing was
spent on repeating the same test while changing the seed for generators
or latency models.
Instead of repeating the same test over and over use the fuzz testing
mechanism provided by Go SDK. This change allows the unit tests to run
much faster while offering a configurable "fuzztime" that dictates for
how long the test cases should be fuzzed.
The changes here introduce the following fuzz tests:
* `FuzzAbsentAdversary`
* `FuzzImmediateDecideAdversary`
* `FuzzHonest_AsyncRequireStrongQuorumToProgress`
* `FuzzHonest_SyncMajorityCommonPrefix`
* `FuzzHonest_AsyncMajorityCommonPrefix`
* `FuzzHonestMultiInstance_AsyncDisagreement`
* `FuzzHonestMultiInstance_SyncAgreement`
* `FuzzHonestMultiInstance_AsyncAgreement`
* `FuzzStoragePower_SyncIncreaseMidSimulation`
* `FuzzStoragePower_AsyncIncreaseMidSimulation`
* `FuzzStoragePower_SyncDecreaseRevertsToBase`
* `FuzzStoragePower_AsyncDecreaseRevertsToBase`
* `FuzzRepeatAdversary`
The CI workflow is updated to run each of the fuzz tests for 30 seconds
in a dedicated job.
0 commit comments