diff options
author | Mark Benvenuto <mark.benvenuto@mongodb.com> | 2016-02-08 16:29:54 -0500 |
---|---|---|
committer | Mark Benvenuto <mark.benvenuto@mongodb.com> | 2016-02-08 16:29:54 -0500 |
commit | 6a21f7390f4a8c08187697230fc6638daf6d54c4 (patch) | |
tree | 77a78caba65538577e67e4b286817409e8b24231 /vendor/src/github.com/smartystreets/goconvey/convey/isolated_execution_test.go | |
parent | 462fb9d1b7b6beec683f8a28f85e4ec354c7b675 (diff) | |
download | mongo-6a21f7390f4a8c08187697230fc6638daf6d54c4.tar.gz |
TOOLS-1058 goconvey fails with gccgo
Diffstat (limited to 'vendor/src/github.com/smartystreets/goconvey/convey/isolated_execution_test.go')
-rw-r--r-- | vendor/src/github.com/smartystreets/goconvey/convey/isolated_execution_test.go | 53 |
1 files changed, 50 insertions, 3 deletions
diff --git a/vendor/src/github.com/smartystreets/goconvey/convey/isolated_execution_test.go b/vendor/src/github.com/smartystreets/goconvey/convey/isolated_execution_test.go index 5926fcf237c..7e22b3caa53 100644 --- a/vendor/src/github.com/smartystreets/goconvey/convey/isolated_execution_test.go +++ b/vendor/src/github.com/smartystreets/goconvey/convey/isolated_execution_test.go @@ -1,9 +1,9 @@ package convey import ( - "time" "strconv" "testing" + "time" ) func TestSingleScope(t *testing.T) { @@ -92,6 +92,28 @@ func TestSingleScopeWithConveyAndNestedReset(t *testing.T) { expectEqual(t, "1a", output) } +func TestPanicingReset(t *testing.T) { + output := prepare() + + Convey("1", t, func() { + output += "1" + + Reset(func() { + panic("nooo") + }) + + Convey("runs since the reset hasn't yet", func() { + output += "a" + }) + + Convey("but this doesnt", func() { + output += "nope" + }) + }) + + expectEqual(t, "1a", output) +} + func TestSingleScopeWithMultipleRegistrationsAndReset(t *testing.T) { output := prepare() @@ -154,14 +176,24 @@ func Test_Panic_AtHigherLevelScopePreventsChildScopesFromRunning(t *testing.T) { output := prepare() Convey("This step panics", t, func() { - Convey("this should NOT be executed", func() { + Convey("this happens, because the panic didn't happen yet", func() { output += "1" }) + output += "a" + + Convey("this should NOT be executed", func() { + output += "2" + }) + + output += "b" + panic("Hi") + + output += "nope" }) - expectEqual(t, "", output) + expectEqual(t, "1ab", output) } func Test_Panic_InChildScopeDoes_NOT_PreventExecutionOfSiblingScopes(t *testing.T) { @@ -721,6 +753,21 @@ func TestMultipleInvocationInheritance2(t *testing.T) { expectEqual(t, "A1 A2 A3 B1 B2 A1 A2 A3 C1 C2 C3 ", output) } +func TestSetDefaultFailureMode(t *testing.T) { + output := prepare() + + SetDefaultFailureMode(FailureContinues) // the default is normally FailureHalts + defer SetDefaultFailureMode(FailureHalts) + + Convey("A", t, func() { + output += "A1 " + So(true, ShouldBeFalse) + output += "A2 " + }) + + expectEqual(t, "A1 A2 ", output) +} + func prepare() string { testReporter = newNilReporter() return "" |