package main import ( "sort" "testing" "text/template" ) func TestTemplateListSort(t *testing.T) { templs := templateList{ template.New("bob.tpl"), template.New("all.tpl"), template.New("struct.tpl"), template.New("ttt.tpl"), } expected := []string{"bob.tpl", "all.tpl", "struct.tpl", "ttt.tpl"} for i, v := range templs { if v.Name() != expected[i] { t.Errorf("Order mismatch, expected: %s, got: %s", expected[i], v.Name()) } } expected = []string{"struct.tpl", "all.tpl", "bob.tpl", "ttt.tpl"} sort.Sort(templs) for i, v := range templs { if v.Name() != expected[i] { t.Errorf("Order mismatch, expected: %s, got: %s", expected[i], v.Name()) } } }