dave08
01/21/2019, 7:41 AMwhenNotNull
is not an assertion, and is the same as result?.let { }
and this will not lead to any runtime failure (nor is it really asserting anything, if null, which I feel is not such good testing practice... but that's my opinion).
As mentioned before, result!! should { }
is not an assertion, and will lead to a runtime failure. So shouldNotBeNull { }
really makes the assertion, and allows to continue asserting on a non-null value.
I admit that if contracts would be an option, there would likely not be a need for the lambda though...
Also shouldBeInstance
might also have further asssertions on the smart casted type... @sam