github.com/segakazzz/buffalo@v0.16.22-0.20210119082501-1f52048d3feb/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  	run.With(g)
    24  
    25  	r.NoError(run.Run())
    26  
    27  	res := run.Results()
    28  	r.Len(res.Commands, 0)
    29  
    30  	files := []string{
    31  		"public/assets/application.css",
    32  		"public/assets/application.js",
    33  		"public/assets/buffalo.css",
    34  		"public/assets/images/favicon.ico",
    35  		"public/assets/images/logo.svg",
    36  		"templates/application.plush.html",
    37  	}
    38  
    39  	r.Len(res.Files, len(files))
    40  	for i, f := range res.Files {
    41  		r.Equal(files[i], f.Name())
    42  	}
    43  
    44  	layout, ferr := res.Find("templates/application.plush.html")
    45  	r.NoError(ferr)
    46  
    47  	r.Contains(layout.String(), "href=\"https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css\"")
    48  }
    49  
    50  const layout = `<!DOCTYPE html>
    51  <html>
    52    <head>
    53      <title>Buffalo - Foo</title>
    54      <%= stylesheetTag("buffalo.css") %>
    55      <%= stylesheetTag("application.css") %>
    56    </head>
    57    <body>
    58    </body>
    59  </html>
    60  `