https://kotlinlang.org logo
#kotest-contributors
Title
# kotest-contributors
d

dr.dreigh

05/05/2020, 4:37 PM
Hi, just started looking at https://github.com/kotest/kotest/issues/1279 - not sure I follow, or if I have a test case right that triggers the bug. if I have a simple property test:
Copy code
forAll<Int>() { i ->
   i % 2 != 0 || i < 2
}
This yeilds the AssertionError:
Copy code
java.lang.AssertionError: Property failed after 6 attempts

	Arg 0: 2 (shrunk from 36050144)

Caused by AssertionFailedError: expected:<true> but was:<false>

Repeat this test by using seed 5533513188678770110
So it seems to state both the shrunk input and the original input which the property does not hold true for. The bug text is: During property testing, if an input fails, the
AssertionError
is being rendered as part of the test report. But if the input has successfully shrunk, the exception that failed the shrunk input is ignored.
Ideally the exception that the user sees in the final test report should be the one that the shrunk input failed with. It might also be ok to render both exceptions since also both inputs (original and shrunk) are rendered. I think I am missing something here, am I looking at the wrong thing? What is the "final test report"? If anyone can point me in the right direction please, that'd be great :)