platformtest: add QueueSubtest functionality

Use it from a top-level test case to queue the
execution of sub-tests after this test case is complete.

Note that the testing harness executes the subtest
_after_ the current top-level test. Hence, the subtest
cannot use any ZFS state of the top-level test.
This commit is contained in:
Christian Schwarz
2022-07-10 14:59:54 +02:00
parent 89f7c76c4e
commit 7769263c2e
2 changed files with 63 additions and 11 deletions
+7
View File
@@ -11,6 +11,13 @@ import (
type Context struct {
context.Context
RootDataset string
// Use this callback from a top-level test case to queue the
// execution of sub-tests after this test case is complete.
//
// Note that the testing harness executes the subtest
// _after_ the current top-level test. Hence, the subtest
// cannot use any ZFS state of the top-level test.
QueueSubtest func(id string, stf func(*Context))
}
var FailNowSentinel = fmt.Errorf("platformtest: FailNow called on context")