diff --git a/config/setup/templates.go b/config/setup/templates.go index 8d04d40b..51d78d5c 100644 --- a/config/setup/templates.go +++ b/config/setup/templates.go @@ -39,11 +39,11 @@ func templatesParse(c *Controller) ([]templates.Rule, error) { // Any remaining arguments are extensions rule.Extensions = c.RemainingArgs() if len(rule.Extensions) == 0 { - rule.Extensions = defaultExtensions + rule.Extensions = defaultTemplateExtensions } } else { - rule.Path = defaultPath - rule.Extensions = defaultExtensions + rule.Path = defaultTemplatePath + rule.Extensions = defaultTemplateExtensions } for _, ext := range rule.Extensions { @@ -56,6 +56,6 @@ func templatesParse(c *Controller) ([]templates.Rule, error) { return rules, nil } -const defaultPath = "/" +const defaultTemplatePath = "/" -var defaultExtensions = []string{".html", ".htm", ".tmpl", ".tpl", ".txt"} +var defaultTemplateExtensions = []string{".html", ".htm", ".tmpl", ".tpl", ".txt"} diff --git a/config/setup/templates_test.go b/config/setup/templates_test.go new file mode 100644 index 00000000..4b9d37ea --- /dev/null +++ b/config/setup/templates_test.go @@ -0,0 +1,43 @@ +package setup + +import ( + "fmt" + "github.com/mholt/caddy/middleware/templates" + "testing" +) + +func TestTemplates(t *testing.T) { + + c := NewTestController(`templates`) + + mid, err := Templates(c) + + if err != nil { + t.Errorf("Expected no errors, got: %v", err) + } + + if mid == nil { + t.Fatal("Expected middleware, was nil instead") + } + + handler := mid(EmptyNext) + myHandler, ok := handler.(templates.Templates) + + if !ok { + t.Fatalf("Expected handler to be type Templates, got: %#v", handler) + } + + if myHandler.Rules[0].Path != defaultTemplatePath { + t.Errorf("Expected / as the default Path") + } + if fmt.Sprint(myHandler.Rules[0].Extensions) != fmt.Sprint(defaultTemplateExtensions) { + t.Errorf("Expected %v to be the Default Extensions", defaultTemplateExtensions) + } + var indexFiles []string + for _, extension := range defaultTemplateExtensions { + indexFiles = append(indexFiles, "index"+extension) + } + if fmt.Sprint(myHandler.Rules[0].IndexFiles) != fmt.Sprint(indexFiles) { + t.Errorf("Expected %v to be the Default Index files", indexFiles) + } +}