middleware/whoami: add (#264)

Add a new middleware that tells you who you are; IP, port and transport
is echoed back.

Also some various cleanup and documentation improvements while at it:

* ResponseWriter: improve the documentation of these helper functions.
* And add an NextHandler for use in tests. Make chaos_test.go and
* whoam_test.go use it.
This commit is contained in:
Miek Gieben
2016-09-17 17:09:05 +01:00
committed by GitHub
parent ed907d3327
commit 30fd224504
10 changed files with 219 additions and 10 deletions

View File

@@ -0,0 +1,19 @@
package whoami
import (
"testing"
"github.com/mholt/caddy"
)
func TestSetupWhoami(t *testing.T) {
c := caddy.NewTestController("dns", `whoami`)
if err := setupWhoami(c); err != nil {
t.Fatalf("Expected no errors, but got: %v", err)
}
c = caddy.NewTestController("dns", `whoami example.org`)
if err := setupWhoami(c); err == nil {
t.Fatalf("Expected errors, but got: %v", err)
}
}