github.com/docker/compose-on-kubernetes@v0.5.0/internal/error-group_test.go (about) 1 package internal 2 3 import ( 4 "errors" 5 "testing" 6 7 "github.com/stretchr/testify/assert" 8 ) 9 10 func TestContains(t *testing.T) { 11 var noerr error 12 err1 := errors.New("error 1") 13 err2 := errors.New("error 2") 14 15 // 0 16 assert.Equal(t, GroupErrors(noerr), nil) 17 assert.Equal(t, GroupErrors(noerr, noerr), nil) 18 19 // 1 20 assert.Equal(t, GroupErrors(err1), err1) 21 assert.Equal(t, GroupErrors(noerr, err1), err1) 22 assert.Equal(t, GroupErrors(err1, noerr), err1) 23 24 // 2 25 const ( 26 err12 = `multiple errors: "error 1", "error 2"` 27 ) 28 assert.Equal(t, err12, GroupErrors(noerr, err1, err2).Error()) 29 assert.Equal(t, err12, GroupErrors(err1, noerr, err2).Error()) 30 31 // infinity (for a chemist). 32 const ( 33 err1212 = `multiple errors: "error 1", "error 2", "error 1", "error 2"` 34 ) 35 assert.Equal(t, err1212, 36 GroupErrors(noerr, err1, err2, noerr, err1, err2).Error()) 37 assert.Equal(t, err1212, 38 GroupErrors(noerr, err1, err2, noerr, GroupErrors(err1, err2)).Error()) 39 assert.Equal(t, err1212, 40 GroupErrors(noerr, GroupErrors(err1, err2), noerr, GroupErrors(err1, err2)).Error()) 41 }