kafka/checkstyle
Jason Gustafson 8ef1619f3e
KAFKA-12459; Use property testing library for raft event simulation tests (#10323)
This patch changes the raft simulation tests to use jqwik, which is a property testing library. This provides two main benefits:

- It simplifies the randomization of test parameters. Currently the tests use a fixed set of `Random` seeds, which means that most builds are doing redundant work. We get a bigger benefit from allowing each build to test different parameterizations.
- It makes it easier to reproduce failures. Whenever a test fails, jqwik will report the random seed that failed. A developer can then modify the `@Property` annotation to use that specific seed in order to reproduce the failure.

This patch also includes an optimization for `MockLog.earliestSnapshotId` which reduces the time to run the simulation tests dramatically.

Reviewers: Ismael Juma <ismael@juma.me.uk>, Chia-Ping Tsai <chia7712@gmail.com>, José Armando García Sancio <jsancio@gmail.com>, David Jacot <djacot@confluent.io>
2021-03-17 19:20:07 -07:00
..
.scalafmt.conf
checkstyle.xml KAFKA-12375: don't reuse thread.id until a thread has fully shut down (#10215) 2021-03-02 16:28:15 -08:00
import-control-core.xml MINOR: Enable topic deletion in the KIP-500 controller (#10184) 2021-03-04 11:28:20 -08:00
import-control-jmh-benchmarks.xml MINOR: Replace BrokerStates.scala with BrokerState.java (#10028) 2021-02-03 13:41:38 -08:00
import-control.xml KAFKA-12459; Use property testing library for raft event simulation tests (#10323) 2021-03-17 19:20:07 -07:00
java.header
suppressions.xml MINOR: Enable topic deletion in the KIP-500 controller (#10184) 2021-03-04 11:28:20 -08:00