Closed sageserpent-open closed 2 years ago
Where one or more of the conjoined trials instance would yield null cases, these can be either passed in to a tupled argument embedded in the tuple value, or unpicked as a null to bind to an individual argument, as long as it is of a reference type.
It is also possible to use this technique to pass single trials whose cases are tuples, again these support both binding to tupled arguments and to individual arguments. These can be intermixed with conjoined trials and simple trials too.
Passing a trials of nullable tuples is only supported if the formal argument type is a tuple too - there is no concept of expanding a null tuple into multiple individual null argument bindings; rather this is taken to mean that there is no tuple to supply in the first place - null is used as a sentinel for this.
This has gone out in release 1.4.0, commit SHA of f8c9f6a1ed04e45620e2f4464dcda852c5767907 .
and
combinator to drive test methods with multiple arguments; allow mixing of this technique with the use of multiple trials fields. Should the conjoined trials' cases be flattened to join the rest of the arguments passed to the test method? Should the use of a tuple as a test method argument be detected and suppress that flattening where it aligns with a conjoined trials?