github.com/JarrahG/buffalocli@v0.0.0-20230801092127-b85bfd5d395a/internal/genny/assets/standard/standard_test.go (about) 1 package standard 2 3 import ( 4 "testing" 5 6 "github.com/gobuffalo/genny/v2" 7 "github.com/gobuffalo/genny/v2/gentest" 8 "github.com/stretchr/testify/require" 9 ) 10 11 func Test_New(t *testing.T) { 12 r := require.New(t) 13 14 g, err := New(&Options{}) 15 r.NoError(err) 16 17 run := gentest.NewRunner() 18 run.Disk.Add(genny.NewFileS("templates/application.plush.html", layout)) 19 run.LookPathFn = func(s string) (string, error) { 20 return s, nil 21 } 22 23 r.NoError(run.With(g)) 24 r.NoError(run.Run()) 25 26 res := run.Results() 27 r.Len(res.Commands, 0) 28 29 files := []string{ 30 "public/assets/application.css", 31 "public/assets/application.js", 32 "public/assets/buffalo.css", 33 "public/assets/images/favicon.ico", 34 "public/assets/images/logo.svg", 35 "templates/application.plush.html", 36 } 37 38 r.Len(res.Files, len(files)) 39 for i, f := range res.Files { 40 r.Equal(files[i], f.Name()) 41 } 42 43 layout, err := res.Find("templates/application.plush.html") 44 r.NoError(err) 45 r.Contains(layout.String(), "href=\"https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css\"") 46 } 47 48 const layout = `<!DOCTYPE html> 49 <html> 50 <head> 51 <title>Buffalo - Foo</title> 52 <%= stylesheetTag("buffalo.css") %> 53 <%= stylesheetTag("application.css") %> 54 </head> 55 <body> 56 </body> 57 </html> 58 `