github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/internal/tiltfile/include/include_test.go (about) 1 package include 2 3 import ( 4 "fmt" 5 "testing" 6 7 "github.com/stretchr/testify/assert" 8 "go.starlark.net/starlark" 9 10 "github.com/tilt-dev/tilt/internal/tiltfile/starkit" 11 ) 12 13 func TestLoadError(t *testing.T) { 14 f := NewFixture(t) 15 16 f.File("Tiltfile", ` 17 include('./foo/Tiltfile') 18 `) 19 f.File("foo/Tiltfile", ` 20 x = 1 21 y = x // 0 22 `) 23 24 _, err := f.ExecFile("Tiltfile") 25 if assert.Error(t, err) { 26 backtrace := err.(*starlark.EvalError).Backtrace() 27 assert.Contains(t, backtrace, fmt.Sprintf("%s:2:8: in <toplevel>", f.JoinPath("Tiltfile"))) 28 assert.Contains(t, backtrace, fmt.Sprintf("%s:3:7: in <toplevel>", f.JoinPath("foo", "Tiltfile"))) 29 } 30 } 31 32 func NewFixture(tb testing.TB) *starkit.Fixture { 33 return starkit.NewFixture(tb, &IncludeFn{}) 34 }