github.com/nextlinux/gosbom@v0.81.1-0.20230627115839-1ff50c281391/gosbom/internal/fileresolver/deferred_test.go (about)

     1  package fileresolver
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/nextlinux/gosbom/gosbom/file"
     7  	"github.com/stretchr/testify/require"
     8  )
     9  
    10  func Test_NewDeferredResolver(t *testing.T) {
    11  	creatorCalled := false
    12  
    13  	deferredResolver := NewDeferred(func() (file.Resolver, error) {
    14  		creatorCalled = true
    15  		return file.NewMockResolverForPaths(), nil
    16  	})
    17  
    18  	require.False(t, creatorCalled)
    19  	require.Nil(t, deferredResolver.resolver)
    20  
    21  	_, _ = deferredResolver.FilesByGlob("**/*")
    22  
    23  	require.True(t, creatorCalled)
    24  	require.NotNil(t, deferredResolver.resolver)
    25  }