123456789101112131415161718192021222324252627282930313233 |
- package testutil
- import (
- "strings"
- "unicode"
- "github.com/stretchr/testify/assert"
- "github.com/stretchr/testify/require"
- )
- // ErrorContains checks that the error is not nil, and contains the expected
- // substring.
- func ErrorContains(t require.TestingT, err error, expectedError string) {
- require.Error(t, err)
- assert.Contains(t, err.Error(), expectedError)
- }
- // EqualNormalizedString compare the actual value to the expected value after applying the specified
- // transform function. It fails the test if these two transformed string are not equal.
- // For example `EqualNormalizedString(t, RemoveSpace, "foo\n", "foo")` wouldn't fail the test as
- // spaces (and thus '\n') are removed before comparing the string.
- func EqualNormalizedString(t require.TestingT, transformFun func(rune) rune, actual, expected string) {
- require.Equal(t, strings.Map(transformFun, expected), strings.Map(transformFun, actual))
- }
- // RemoveSpace returns -1 if the specified runes is considered as a space (unicode)
- // and the rune itself otherwise.
- func RemoveSpace(r rune) rune {
- if unicode.IsSpace(r) {
- return -1
- }
- return r
- }
|