From 9995466a18ae1c95b67088e51c440f5b0228d345 Mon Sep 17 00:00:00 2001 From: Karthic Rao Date: Sat, 27 Jun 2015 02:27:02 +0530 Subject: [PATCH] Initial Test case for config/setup/templates.go --- config/setup/templates.go | 10 ++++---- config/setup/templates_test.go | 43 ++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 5 deletions(-) create mode 100644 config/setup/templates_test.go diff --git a/config/setup/templates.go b/config/setup/templates.go index 8d04d40b..fe908898 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..35d40aa7 --- /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) + } +}