Skip to content

Commit 0810cc4

Browse files
author
Ronen Hilewicz
committed
Preserve order of .Msg("a").Msg("b") calls
But still print inner errors at the end.
1 parent cd05cdf commit 0810cc4

2 files changed

Lines changed: 8 additions & 6 deletions

File tree

errors.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,15 +77,17 @@ func (e *AsertoError) Copy() *AsertoError {
7777
}
7878

7979
func (e *AsertoError) Error() string {
80-
innerMessage := ""
80+
errsMessage := ""
8181

8282
if len(e.errs) > 0 {
83-
innerMessage = e.errs[0].Error()
83+
errsMessage = e.errs[0].Error()
8484

8585
for _, err := range e.errs[1:] {
86-
innerMessage = innerMessage + colon + err.Error()
86+
errsMessage = errsMessage + colon + err.Error()
8787
}
8888
}
89+
90+
innerMessage := errsMessage
8991
if len(e.data) > 0 {
9092
for k, v := range e.data {
9193
if k == "msg" {

errors_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,10 +68,10 @@ func TestError(t *testing.T) {
6868
err6 := ErrNotFound.Err(errors.New("boom")).Err(errors.New("pow"))
6969
err7 := ErrNotFound.Msg("bla")
7070

71-
assert.Equal(err.Error(), "E10001 not found: boom: bla")
71+
assert.Equal(err.Error(), "E10001 not found: bla: boom")
7272
assert.Equal(err2.Error(), "E10001 not found: bla: ala")
73-
assert.Equal(err3.Error(), "E10001 not found: boom: bla: ala")
74-
assert.Equal(err4.Error(), "E10001 not found: boom: pow: bla: ala")
73+
assert.Equal(err3.Error(), "E10001 not found: bla: ala: boom")
74+
assert.Equal(err4.Error(), "E10001 not found: bla: ala: boom: pow")
7575
assert.Equal(err5.Error(), "E10001 not found: boom")
7676
assert.Equal(err6.Error(), "E10001 not found: boom: pow")
7777
assert.Equal(err7.Error(), "E10001 not found: bla")

0 commit comments

Comments
 (0)