logger_test.go 641 B

1234567891011121314151617181920212223242526272829303132
  1. package tango
  2. import (
  3. "testing"
  4. "bytes"
  5. "net/http/httptest"
  6. "net/http"
  7. "github.com/lunny/log"
  8. )
  9. func TestLogger(t *testing.T) {
  10. buff := bytes.NewBufferString("")
  11. recorder := httptest.NewRecorder()
  12. n := New()
  13. // replace log for testing
  14. n.Use(NewLogging(log.New(buff, "[tango] ", 0)))
  15. n.UseHandler(http.HandlerFunc(func(rw http.ResponseWriter, r *http.Request) {
  16. rw.WriteHeader(http.StatusNotFound)
  17. }))
  18. req, err := http.NewRequest("GET", "http://localhost:3000/foobar", nil)
  19. if err != nil {
  20. t.Error(err)
  21. }
  22. n.ServeHTTP(recorder, req)
  23. expect(t, recorder.Code, http.StatusNotFound)
  24. refute(t, len(buff.String()), 0)
  25. }