🚫 Deprecated
Core
- Deprecate
ClassBasedNavigableIterableAssertandClassBasedNavigableListAssert#3529
✨ New Features
Core
- Add
actual()to access the object under test #3489 - Add
isCompletedWithValueMatchingWithintoCompletableFutureassertions #3506 - Add
completesExceptionallyWithintoCompletableFutureassertions #3597 - Add
inBinarytoCharSequenceassertions #3600 - Support for
Assertions.byLessThan(Duration)andAssertions.within(Duration)#3486 - Add standard representation for
CharSequence#3617 - Add predicate descriptions overloads to
anyMatchandnoneMatch#3639 - Add
doesNotMatch(Predicate)#3684 - Add
usingEqualsaccepting aBiPredicateand an optional description to provide a custom comparison in assertions #3678
Guava
- Add
isNotEmptytoTableassertions #3559
🐛 Bug Fixes
Core
- Recursive assertion
hasNoNullFieldsthrows NPE with fields of anonymous and local types #3534 - Fix incorrect mutation of
actualElementsGroupedByHashCodein recursive comparison - Recursive comparison
ignoringFieldsnot working properly with maps #2988 - Custom representation ignored when describing expected items not in the actual list #3646
hasFieldOrPropertyWithValueswallows exceptions thrown by getters, and reports non-existent property instead #3563satisfies()with nested assertions obscures stack trace #2542
⚡ Improvements
Core
- Report all failing conditions when using
satisfies(allOf(Condition...))#3537 - Fix Unicode escapes in
inUnicode()Javadoc - Show error differences if values were compared with
equalsin recursive comparison #3209 - Propagate common basetype for
extracting(Function...)#3673 - Add throwable stacktrace to
ShouldNotContainCharSequence - Remove unused code and other minor cleanup #3683
- Simplify comparison strategy
isLessThanandisLessThanOrEqualToinAbstractComparisonStrategy#3694 - Update
AbstractCharSequenceAssert.javareference #3700 - Include stack trace of internal errors in all/any satisfy assertions
🔨 Dependency Upgrades
Core
Guava
- Upgrade to Guava 33.4.0-jre #3705
❤️ Contributors
Thanks to all the contributors who worked on this release:
@JunHyungJang @mipo256 @vladykin @Marcono1234 @sunaleed @etrandafir93 @FlorianCousin @OlivierCavadenti @jh-instant @patrickuhlmann @IvoHD @alexandra-junghans @fmbenhassine @etrandafir93 @shaikhu @cookieMr @emmanuel-ferdman @mk868