github.com/noqcks/syft@v0.0.0-20230920222752-a9e2c4e288e5/syft/pkg/cataloger/internal/unionreader/union_reader_test.go (about) 1 package unionreader 2 3 import ( 4 "io" 5 "strings" 6 "testing" 7 8 "github.com/stretchr/testify/assert" 9 "github.com/stretchr/testify/require" 10 ) 11 12 func Test_getUnionReader_notUnionReader(t *testing.T) { 13 expectedContents := "this is a test" 14 reader := io.NopCloser(strings.NewReader(expectedContents)) 15 16 // make certain that the test fixture does not implement the union reader 17 _, ok := reader.(UnionReader) 18 require.False(t, ok) 19 20 actual, err := GetUnionReader(reader) 21 require.NoError(t, err) 22 23 _, ok = actual.(UnionReader) 24 require.True(t, ok) 25 26 b, err := io.ReadAll(actual) 27 require.NoError(t, err) 28 29 assert.Equal(t, expectedContents, string(b)) 30 }