github.com/gobuffalo/buffalo-cli/v2@v2.0.0-alpha.15.0.20200919213536-a7350c8e6799/cli/cmds/build/package_test.go (about) 1 package build 2 3 import ( 4 "context" 5 "testing" 6 7 "github.com/gobuffalo/buffalo-cli/v2/cli/cmds/build/buildtest" 8 "github.com/gobuffalo/plugins" 9 "github.com/stretchr/testify/require" 10 ) 11 12 func Test_Cmd_Package(t *testing.T) { 13 r := require.New(t) 14 15 exp := []string{"foo.go", "bar.go"} 16 pf := func(ctx context.Context, root string) ([]string, error) { 17 return exp, nil 18 } 19 20 var act []string 21 pr := func(ctx context.Context, root string, files []string) error { 22 act = files 23 return nil 24 } 25 26 plugs := plugins.Plugins{ 27 buildtest.BeforeBuilder(mainFileBeforeBuilder), 28 buildtest.AfterBuilder(cleanupAfterBuilder), 29 buildtest.Packager(pr), 30 buildtest.PackFiler(pf), 31 } 32 33 bc := &Cmd{} 34 bc.WithPlugins(func() []plugins.Plugin { 35 return plugs 36 }) 37 38 err := bc.Main(context.Background(), ".", nil) 39 r.NoError(err) 40 41 r.Equal(exp, act) 42 }