mirror of
https://github.com/caddyserver/caddy.git
synced 2024-12-23 22:27:38 -05:00
Merge pull request #170 from Karthic-Hackintosh/master
Complete test coverage for config/setup/templates.go
This commit is contained in:
commit
b0d3a8e1b5
1 changed files with 51 additions and 0 deletions
|
@ -41,3 +41,54 @@ func TestTemplates(t *testing.T) {
|
||||||
t.Errorf("Expected %v to be the Default Index files", indexFiles)
|
t.Errorf("Expected %v to be the Default Index files", indexFiles)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
func TestTemplatesParse(t *testing.T) {
|
||||||
|
tests := []struct {
|
||||||
|
inputTemplateConfig string
|
||||||
|
shouldErr bool
|
||||||
|
expectedTemplateConfig []templates.Rule
|
||||||
|
}{
|
||||||
|
{`templates /api1`, false, []templates.Rule{{
|
||||||
|
Path: "/api1",
|
||||||
|
Extensions: defaultTemplateExtensions,
|
||||||
|
}}},
|
||||||
|
{`templates /api2 .txt .htm`, false, []templates.Rule{{
|
||||||
|
Path: "/api2",
|
||||||
|
Extensions: []string{".txt", ".htm"},
|
||||||
|
}}},
|
||||||
|
|
||||||
|
{`templates /api3 .htm .html
|
||||||
|
templates /api4 .txt .tpl `, false, []templates.Rule{{
|
||||||
|
Path: "/api3",
|
||||||
|
Extensions: []string{".htm", ".html"},
|
||||||
|
}, {
|
||||||
|
Path: "/api4",
|
||||||
|
Extensions: []string{".txt", ".tpl"},
|
||||||
|
}}},
|
||||||
|
}
|
||||||
|
for i, test := range tests {
|
||||||
|
c := NewTestController(test.inputTemplateConfig)
|
||||||
|
actualTemplateConfigs, err := templatesParse(c)
|
||||||
|
|
||||||
|
if err == nil && test.shouldErr {
|
||||||
|
t.Errorf("Test %d didn't error, but it should have", i)
|
||||||
|
} else if err != nil && !test.shouldErr {
|
||||||
|
t.Errorf("Test %d errored, but it shouldn't have; got '%v'", i, err)
|
||||||
|
}
|
||||||
|
if len(actualTemplateConfigs) != len(test.expectedTemplateConfig) {
|
||||||
|
t.Fatalf("Test %d expected %d no of Template configs, but got %d ",
|
||||||
|
i, len(test.expectedTemplateConfig), len(actualTemplateConfigs))
|
||||||
|
}
|
||||||
|
for j, actualTemplateConfig := range actualTemplateConfigs {
|
||||||
|
|
||||||
|
if actualTemplateConfig.Path != test.expectedTemplateConfig[j].Path {
|
||||||
|
t.Errorf("Test %d expected %dth Template Config Path to be %s , but got %s",
|
||||||
|
i, j, test.expectedTemplateConfig[j].Path, actualTemplateConfig.Path)
|
||||||
|
}
|
||||||
|
|
||||||
|
if fmt.Sprint(actualTemplateConfig.Extensions) != fmt.Sprint(test.expectedTemplateConfig[j].Extensions) {
|
||||||
|
t.Errorf("Expected %v to be the Extensions , but got %v instead", test.expectedTemplateConfig[j].Extensions, actualTemplateConfig.Extensions)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue