Disons que je teste une fonctionnalité qui appelle un service web, et que le service est moqué avec httptest.NewServer
func TestSomeFeature(t *testing.T) {
server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(200)
}))
SomeFeature(server.URL, "foo")
}
func SomeFeature(host, a string) {
if a == "foo" {
http.Get(fmt.Sprintf("%v/foo", host))
}
if a == "bar" {
http.Get(fmt.Sprintf("%v/bar", host))
}
}
Comment puis-je affirmer que le serveur a été appelé avec la bonne url /foo
et l'échec de l'essai, si il a été appelé avec l'url erronée ou pas appelée du tout?
server
?