Skip to content
This repository was archived by the owner on Dec 22, 2025. It is now read-only.

Commit fadce9f

Browse files
authored
fix: error msg on assert.NoError (#25)
1 parent 8ce6c95 commit fadce9f

2 files changed

Lines changed: 64 additions & 1 deletion

File tree

assert/assert_test.go

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package assert_test
22

33
import (
4+
"errors"
5+
"fmt"
46
"math"
57
"testing"
68

@@ -412,3 +414,64 @@ func TestAssertErrMessages(t *testing.T) {
412414
a.Error(nil, "func msg")
413415
})
414416
}
417+
418+
func TestAssertNoErrMessages(t *testing.T) {
419+
err := errors.New("test")
420+
errmsg := fmt.Sprintf("unexpected error[%v]", err)
421+
422+
t.Run("no error: no details", func(t *testing.T) {
423+
a := assert.New(t, func(a *assert.Assert, got string) {
424+
want := errmsg
425+
assert.EqualStrings(t, want, got)
426+
})
427+
a.NoError(err)
428+
})
429+
430+
t.Run("no error: constructor msg and details msg with fmt", func(t *testing.T) {
431+
a := assert.New(t, func(a *assert.Assert, got string) {
432+
want := fmt.Sprintf("%s: func fmt 777: constructor fmt 666", errmsg)
433+
assert.EqualStrings(t, want, got)
434+
}, "constructor fmt %d", 666)
435+
a.NoError(err, "func fmt %d", 777)
436+
})
437+
438+
t.Run("no error: constructor msg and details msg no fmt", func(t *testing.T) {
439+
a := assert.New(t, func(a *assert.Assert, got string) {
440+
want := fmt.Sprintf("%s: func msg: constructor msg", errmsg)
441+
assert.EqualStrings(t, want, got)
442+
}, "constructor msg")
443+
a.NoError(err, "func msg")
444+
})
445+
446+
t.Run("no error: constructor msg with fmt", func(t *testing.T) {
447+
a := assert.New(t, func(a *assert.Assert, got string) {
448+
want := fmt.Sprintf("%s: constructor fmt 666", errmsg)
449+
assert.EqualStrings(t, want, got)
450+
}, "constructor fmt %d", 666)
451+
a.NoError(err)
452+
})
453+
454+
t.Run("no error: constructor msg no fmt", func(t *testing.T) {
455+
a := assert.New(t, func(a *assert.Assert, got string) {
456+
want := fmt.Sprintf("%s: constructor msg", errmsg)
457+
assert.EqualStrings(t, want, got)
458+
}, "constructor msg")
459+
a.NoError(err)
460+
})
461+
462+
t.Run("no error: detail msg with fmt", func(t *testing.T) {
463+
a := assert.New(t, func(a *assert.Assert, got string) {
464+
want := fmt.Sprintf("%s: func fmt 666", errmsg)
465+
assert.EqualStrings(t, want, got)
466+
})
467+
a.NoError(err, "func fmt %d", 666)
468+
})
469+
470+
t.Run("no error: detail msg no fmt", func(t *testing.T) {
471+
a := assert.New(t, func(a *assert.Assert, got string) {
472+
want := fmt.Sprintf("%s: func msg", errmsg)
473+
assert.EqualStrings(t, want, got)
474+
})
475+
a.NoError(err, "func msg")
476+
})
477+
}

assert/error.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import (
1010
func (assert *Assert) NoError(err error, details ...interface{}) {
1111
assert.t.Helper()
1212
if err != nil {
13-
assert.fail(details, "unexpected error[%s]%s", err)
13+
assert.fail(details, "unexpected error[%s]", err)
1414
}
1515
}
1616

0 commit comments

Comments
 (0)