log_option_helpers_test.go 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package loggerutils
  2. import (
  3. "testing"
  4. "github.com/docker/docker/daemon/logger"
  5. )
  6. func TestParseDefaultIgnoreFlag(t *testing.T) {
  7. ctx := buildContext(map[string]string{})
  8. flag, e := ParseFailOnStartupErrorFlag(ctx)
  9. assertFlag(t, e, flag, true)
  10. }
  11. func TestParseIgnoreFlagWhenFalse(t *testing.T) {
  12. ctx := buildContext(map[string]string{"fail-on-startup-error": "false"})
  13. flag, e := ParseFailOnStartupErrorFlag(ctx)
  14. assertFlag(t, e, flag, false)
  15. }
  16. func TestParseIgnoreFlagWhenTrue(t *testing.T) {
  17. ctx := buildContext(map[string]string{"fail-on-startup-error": "true"})
  18. flag, e := ParseFailOnStartupErrorFlag(ctx)
  19. assertFlag(t, e, flag, true)
  20. }
  21. func TestParseIgnoreFlagWithError(t *testing.T) {
  22. ctx := buildContext(map[string]string{"fail-on-startup-error": "maybe :)"})
  23. flag, e := ParseFailOnStartupErrorFlag(ctx)
  24. if e == nil {
  25. t.Fatalf("Error should have happened")
  26. }
  27. assertFlag(t, nil, flag, true)
  28. }
  29. // Helpers
  30. func buildConfig(cfg map[string]string) logger.Context {
  31. return logger.Context{
  32. Config: cfg,
  33. }
  34. }
  35. func assertFlag(t *testing.T, e error, flag bool, expected bool) {
  36. if e != nil {
  37. t.Fatalf("Error parsing ignore connect error flag: %q", e)
  38. }
  39. if flag != expected {
  40. t.Fatalf("Wrong flag: %t, should be %t", flag, expected)
  41. }
  42. }