package tests import ( "git.virtual.blue/tomgracey/template-nest-go" "github.com/stretchr/testify/assert" "testing" ) func TestRenderWithDefaults(t *testing.T) { nest, err := templatenest.New(templatenest.Option{ TemplateDir: "templates", Defaults: templatenest.Hash{ "variable": "Simple Variable", "space": templatenest.Hash{ "inside": "A variable inside a space.", }, }, }) if err != nil { t.Fatalf("Failed to initialize TemplateNest: %+v", err) } page := templatenest.Hash{ "TEMPLATE": "00-simple-page", "simple_component": []templatenest.Hash{ templatenest.Hash{ "TEMPLATE": "01-simple-component", "variable": "Simple Variable in Simple Component", }, }, } outputPage := templatenest.Hash{"TEMPLATE": "output/01-simple-page"} assert.Equal( t, nest.MustRender(outputPage), nest.MustRender(page), "Rendered output does not match expected output", ) spacePage := templatenest.Hash{"TEMPLATE": "03-namespace-page"} spaceOutputPage := templatenest.Hash{"TEMPLATE": "output/11-namespace-page"} assert.Equal( t, nest.MustRender(spaceOutputPage), nest.MustRender(spacePage), "Rendered output does not match expected output", ) }