http_test.go 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package docker
  2. import (
  3. "fmt"
  4. "net/http"
  5. "net/http/httptest"
  6. "testing"
  7. )
  8. func TestGetBoolParam(t *testing.T) {
  9. if ret, err := getBoolParam("true"); err != nil || !ret {
  10. t.Fatalf("true -> true, nil | got %t %s", ret, err)
  11. }
  12. if ret, err := getBoolParam("True"); err != nil || !ret {
  13. t.Fatalf("True -> true, nil | got %t %s", ret, err)
  14. }
  15. if ret, err := getBoolParam("1"); err != nil || !ret {
  16. t.Fatalf("1 -> true, nil | got %t %s", ret, err)
  17. }
  18. if ret, err := getBoolParam(""); err != nil || ret {
  19. t.Fatalf("\"\" -> false, nil | got %t %s", ret, err)
  20. }
  21. if ret, err := getBoolParam("false"); err != nil || ret {
  22. t.Fatalf("false -> false, nil | got %t %s", ret, err)
  23. }
  24. if ret, err := getBoolParam("0"); err != nil || ret {
  25. t.Fatalf("0 -> false, nil | got %t %s", ret, err)
  26. }
  27. if ret, err := getBoolParam("faux"); err == nil || ret {
  28. t.Fatalf("faux -> false, err | got %t %s", ret, err)
  29. }
  30. }
  31. func TesthttpError(t *testing.T) {
  32. r := httptest.NewRecorder()
  33. httpError(r, fmt.Errorf("No such method"))
  34. if r.Code != http.StatusNotFound {
  35. t.Fatalf("Expected %d, got %d", http.StatusNotFound, r.Code)
  36. }
  37. httpError(r, fmt.Errorf("This accound hasn't been activated"))
  38. if r.Code != http.StatusForbidden {
  39. t.Fatalf("Expected %d, got %d", http.StatusForbidden, r.Code)
  40. }
  41. httpError(r, fmt.Errorf("Some error"))
  42. if r.Code != http.StatusInternalServerError {
  43. t.Fatalf("Expected %d, got %d", http.StatusInternalServerError, r.Code)
  44. }
  45. }