restartmanager_test.go 942 B

123456789101112131415161718192021222324252627282930313233343536
  1. package restartmanager // import "github.com/docker/docker/restartmanager"
  2. import (
  3. "testing"
  4. "time"
  5. "github.com/docker/docker/api/types/container"
  6. )
  7. func TestRestartManagerTimeout(t *testing.T) {
  8. rm := New(container.RestartPolicy{Name: "always"}, 0)
  9. duration := 1 * time.Second
  10. should, _, err := rm.ShouldRestart(0, false, duration)
  11. if err != nil {
  12. t.Fatal(err)
  13. }
  14. if !should {
  15. t.Fatal("container should be restarted")
  16. }
  17. if rm.timeout != defaultTimeout {
  18. t.Fatalf("restart manager should have a timeout of 100 ms but has %s", rm.timeout)
  19. }
  20. }
  21. func TestRestartManagerTimeoutReset(t *testing.T) {
  22. rm := New(container.RestartPolicy{Name: "always"}, 0)
  23. rm.timeout = 5 * time.Second
  24. duration := 10 * time.Second
  25. _, _, err := rm.ShouldRestart(0, false, duration)
  26. if err != nil {
  27. t.Fatal(err)
  28. }
  29. if rm.timeout != defaultTimeout {
  30. t.Fatalf("restart manager should have a timeout of 100 ms but has %s", rm.timeout)
  31. }
  32. }