All releases

v2.1.0

fluent-everywhere

Fluent assertions for the shared broker — record, topic, and extraction.

Highlights

  • 01

    Shared-broker entry points

    KafkaAssertions.assertThatTopic(topic), assertThatRecord(topic), assertThatRecord(topic, Class) — start a chain without wiring through a reader.

    Read the guide →
  • 02

    Topic-level chains

    containsRecordSatisfying(...), allRecordsSatisfy(...), noRecordSatisfies(...) for String and typed payloads.

    Read the guide →
  • 03

    Extraction

    extractingKeys(), extractingValues(...), extractingJsonPath(...) feed into AssertJ collection assertions.

    Read the guide →
  • 04

    KafkaTestAwait

    Small CountDownLatch-friendly helper with default timeout and assertion-friendly failure messages.

    Read the guide →

Full notes

Added

  • Shared-broker assertion entry points: KafkaAssertions.assertThatTopic(topic), assertThatRecord(topic), assertThatRecord(topic, Class).
  • Topic-level containsRecordSatisfying(...) assertions reusing the richer KafkaRecordAssert chain for String and typed payloads.
  • Matcher-based topic assertions for record keys plus String, JSON, and Avro payload values.
  • Collection-style topic assertions: allRecordsSatisfy(...) and noRecordSatisfies(...).
  • Extraction assertions for topic keys, payload values, and JsonPath values.
  • KafkaValuesAssert exposing AssertJ collection assertions for extracted topic values.
  • KafkaTestAwait helper for CountDownLatch-based async tests.
  • Dedicated integration tests covering matcher overloads, JSON extraction, DTO extraction, Avro extraction, and extraction failure scenarios.

Changed

  • Assertion docs reorganised into linked Record, Topic, and Extraction guides with explicit overload examples for JSON and Avro topics.