github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/internal/tiltfile/watch/watch_test.go (about)

     1  package watch
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/stretchr/testify/require"
     7  
     8  	"github.com/tilt-dev/tilt/internal/tiltfile/starkit"
     9  	"github.com/tilt-dev/tilt/pkg/model"
    10  )
    11  
    12  func TestBasic(t *testing.T) {
    13  	f := NewFixture(t)
    14  	f.File("Tiltfile", `
    15  watch_settings(ignore=['foo'])
    16  `)
    17  	result, err := f.ExecFile("Tiltfile")
    18  	require.NoError(t, err)
    19  	require.Equal(t, model.WatchSettings{
    20  		Ignores: []model.Dockerignore{
    21  			{
    22  				LocalPath: f.Path(),
    23  				Patterns:  []string{"foo"},
    24  				Source:    "watch_settings()",
    25  			},
    26  		},
    27  	}, MustState(result))
    28  }
    29  
    30  func TestLoaded(t *testing.T) {
    31  	f := NewFixture(t)
    32  	f.File("foo/Tiltfile", `
    33  watch_settings(ignore=['bar'])
    34  x = 1
    35  `)
    36  	f.File("Tiltfile", `
    37  load('./foo/Tiltfile', 'x')
    38  `)
    39  	result, err := f.ExecFile("Tiltfile")
    40  	require.NoError(t, err)
    41  	require.Equal(t, model.WatchSettings{
    42  		Ignores: []model.Dockerignore{
    43  			{
    44  				LocalPath: f.JoinPath("foo"),
    45  				Patterns:  []string{"bar"},
    46  				Source:    "watch_settings()",
    47  			},
    48  		},
    49  	}, MustState(result))
    50  }
    51  
    52  func NewFixture(tb testing.TB) *starkit.Fixture {
    53  	return starkit.NewFixture(tb, NewPlugin())
    54  }