suite: fix recoverAndFailOnPanic to report at the right location

Add calls to t.Helper() to fix the location where the panic is reported
as a test failure.
pull/1502/head
Olivier Mengué 2023-11-01 21:39:20 +01:00
parent b139300e7e
commit 2be68b5e9e
1 changed files with 4 additions and 0 deletions

View File

@ -78,11 +78,13 @@ func (suite *Suite) Assert() *assert.Assertions {
}
func recoverAndFailOnPanic(t *testing.T) {
t.Helper()
r := recover()
failOnPanic(t, r)
}
func failOnPanic(t *testing.T, r interface{}) {
t.Helper()
if r != nil {
t.Errorf("test panicked: %v\n%s", r, debug.Stack())
t.FailNow()
@ -165,6 +167,8 @@ func Run(t *testing.T, suite TestingSuite) {
suite.SetT(t)
defer recoverAndFailOnPanic(t)
defer func() {
t.Helper()
r := recover()
if stats != nil {