It is useful to be able to not pass or fail a test. Typically, this is accomplished by using the ignored flag; that works fine when the determination can be made before the Trial is pushed to the runner. There are cases where that information may not be known until the test is actually run.
In order to preserve API, a interface is created to allow created a test that may be skipped based on runtime information.
There is certainly room for discussion on how this is implemented. Using Ok was selected here as in my case it makes sense for a skipped test to be considered passing. For others, an enumerated Failure type might make more sense.
This closes #19
It is useful to be able to not pass or fail a test. Typically, this is accomplished by using the ignored flag; that works fine when the determination can be made before the
Trial
is pushed to the runner. There are cases where that information may not be known until the test is actually run.In order to preserve API, a interface is created to allow created a test that may be skipped based on runtime information.
There is certainly room for discussion on how this is implemented. Using
Ok
was selected here as in my case it makes sense for a skipped test to be considered passing. For others, an enumeratedFailure
type might make more sense.