diff --git a/core/mapping/utils_test.go b/core/mapping/utils_test.go index 8a864589..85b27c42 100644 --- a/core/mapping/utils_test.go +++ b/core/mapping/utils_test.go @@ -209,6 +209,12 @@ func TestRepr(t *testing.T) { newMockPtr(), "mockptr", }, + { + &mockOpacity{ + val: 1, + }, + "{1}", + }, { true, "true", diff --git a/core/mapping/yamlunmarshaler_test.go b/core/mapping/yamlunmarshaler_test.go index d635fd74..e0224d6f 100644 --- a/core/mapping/yamlunmarshaler_test.go +++ b/core/mapping/yamlunmarshaler_test.go @@ -6,6 +6,7 @@ import ( "testing" "github.com/stretchr/testify/assert" + "k8s.io/utils/io" ) func TestUnmarshalYamlBytes(t *testing.T) { @@ -18,6 +19,22 @@ func TestUnmarshalYamlBytes(t *testing.T) { assert.Equal(t, "liao", c.Name) } +func TestUnmarshalYamlBytesErrorInput(t *testing.T) { + var c struct { + Name string + } + content := []byte(`liao`) + assert.NotNil(t, UnmarshalYamlBytes(content, &c)) +} + +func TestUnmarshalYamlBytesEmptyInput(t *testing.T) { + var c struct { + Name string + } + content := []byte(``) + assert.NotNil(t, UnmarshalYamlBytes(content, &c)) +} + func TestUnmarshalYamlBytesOptional(t *testing.T) { var c struct { Name string @@ -918,3 +935,18 @@ func TestUnmarshalYamlReaderError(t *testing.T) { err := UnmarshalYamlReader(reader, &v) assert.NotNil(t, err) } + +func TestUnmarshalYamlBadReader(t *testing.T) { + var v struct { + Any string + } + + err := UnmarshalYamlReader(new(badReader), &v) + assert.NotNil(t, err) +} + +type badReader struct{} + +func (b *badReader) Read(p []byte) (n int, err error) { + return 0, io.ErrLimitReached +}