53 lines
1.3 KiB
Go
53 lines
1.3 KiB
Go
package messenger
|
|
|
|
import (
|
|
"bytes"
|
|
"errors"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestNewUnmarshalError(t *testing.T) {
|
|
err := NewUnmarshalError()
|
|
assert.True(t, errors.Is(err, ErrUnmarshal))
|
|
}
|
|
|
|
func TestUnmarshalError_Error(t *testing.T) {
|
|
content := []byte("test content")
|
|
actual := NewUnmarshalError().WithReaderContent(content).Error()
|
|
expected := "can not unmarshal content: test content"
|
|
assert.Equal(t, expected, actual)
|
|
}
|
|
|
|
func TestUnmarshalError_Unwrap(t *testing.T) {
|
|
actual := NewUnmarshalError().Unwrap()
|
|
expected := ErrUnmarshal
|
|
assert.Equal(t, expected, actual)
|
|
}
|
|
|
|
func TestUnmarshalError_WithReaderContent(t *testing.T) {
|
|
content := []byte("test content")
|
|
reader := bytes.NewReader(content)
|
|
|
|
actual := NewUnmarshalError().WithReaderContent(content)
|
|
expected := &UnmarshalError{Err: ErrUnmarshal, Content: reader}
|
|
assert.Equal(t, expected, actual)
|
|
}
|
|
|
|
func TestUnmarshalError_WithReader(t *testing.T) {
|
|
content := []byte("test content")
|
|
reader := bytes.NewReader(content)
|
|
|
|
actual := NewUnmarshalError().WithReader(reader)
|
|
expected := &UnmarshalError{Err: ErrUnmarshal, Content: reader}
|
|
assert.Equal(t, expected, actual)
|
|
}
|
|
|
|
func TestUnmarshalError_WithErr(t *testing.T) {
|
|
err := errors.New("some error")
|
|
actual := NewUnmarshalError().WithErr(err)
|
|
expected := &UnmarshalError{Err: err}
|
|
assert.Equal(t, expected, actual)
|
|
}
|