github.com/segakazzz/buffalo@v0.16.22-0.20210119082501-1f52048d3feb/genny/grift/grift_test.go (about) 1 package grift 2 3 import ( 4 "testing" 5 6 "github.com/gobuffalo/genny/v2/gentest" 7 "github.com/stretchr/testify/require" 8 ) 9 10 func Test_New(t *testing.T) { 11 r := require.New(t) 12 13 run := gentest.NewRunner() 14 err := run.WithNew(New(&Options{ 15 Args: []string{"foo"}, 16 })) 17 r.NoError(err) 18 r.NoError(run.Run()) 19 20 res := run.Results() 21 r.Len(res.Commands, 0) 22 r.Len(res.Files, 1) 23 24 f := res.Files[0] 25 r.Equal("grifts/foo.go", f.Name()) 26 body := f.String() 27 r.Contains(body, `var _ = Add("foo", func(c *Context) error`) 28 } 29 30 func Test_New_Namespaced(t *testing.T) { 31 r := require.New(t) 32 33 run := gentest.NewRunner() 34 err := run.WithNew(New(&Options{ 35 Args: []string{"foo:bar"}, 36 })) 37 r.NoError(err) 38 r.NoError(run.Run()) 39 40 res := run.Results() 41 r.Len(res.Commands, 0) 42 r.Len(res.Files, 1) 43 44 f := res.Files[0] 45 r.Equal("grifts/bar.go", f.Name()) 46 body := f.String() 47 r.Contains(body, `Add("bar", func(c *Context) error`) 48 } 49 50 func Test_New_No_Name(t *testing.T) { 51 r := require.New(t) 52 53 _, err := New(&Options{}) 54 r.Error(err) 55 }