package subtest import ( "context" "testing" "gotest.tools/assert" ) func TestTestcase_Run_CallsCleanup(t *testing.T) { calls := []int{} var ctx context.Context Run(t, "test-run-cleanup", func(t TestContext) { cleanup := func(n int) func() { return func() { calls = append(calls, n) } } ctx = t.Ctx() t.AddCleanup(cleanup(2)) t.AddCleanup(cleanup(1)) t.AddCleanup(cleanup(0)) }) assert.DeepEqual(t, calls, []int{0, 1, 2}) assert.Equal(t, ctx.Err(), context.Canceled) } func TestTestcase_Run_Parallel(t *testing.T) { Run(t, "test-parallel", func(t TestContext) { t.Parallel() }) }