In the new repository, we added a file called template.go and here is the function we will test:
func parseTemplate(soldier Soldier, tmpl string) *bytes.Buffer { var buff = new(bytes.Buffer) t := template.New("A template file") t, err := t.Parse(tmpl) if err != nil { log.Fatal("Parse: ", err) return buff } err = t.Execute(buff, soldier) if err != nil { log.Fatal("Execute: ", err) return buff } return buff}
We added the following unit test case to test the parseTemplate function in the template_test.go file:
func TestParseTemplate(t *testing.T) { newSoldier := Soldier{ Name: "Luke Cage", Rank: "SGT", TimeInService: 4, } txt := parseTemplate(newSoldier, templateText) expectedTxt := `Name is Luke ...