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 }