Files
docker-cli/components/cli/opts/duration_test.go
Daniel Nephin ad1a2c9e1d Automated migration
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 39c2ca57c1
Component: cli
2018-03-05 19:41:17 -05:00

31 lines
909 B
Go

package opts
import (
"testing"
"time"
"github.com/gotestyourself/gotestyourself/assert"
is "github.com/gotestyourself/gotestyourself/assert/cmp"
)
func TestDurationOptString(t *testing.T) {
dur := time.Duration(300 * 10e8)
duration := DurationOpt{value: &dur}
assert.Check(t, is.Equal("5m0s", duration.String()))
}
func TestDurationOptSetAndValue(t *testing.T) {
var duration DurationOpt
assert.Check(t, duration.Set("300s"))
assert.Check(t, is.Equal(time.Duration(300*10e8), *duration.Value()))
assert.Check(t, duration.Set("-300s"))
assert.Check(t, is.Equal(time.Duration(-300*10e8), *duration.Value()))
}
func TestPositiveDurationOptSetAndValue(t *testing.T) {
var duration PositiveDurationOpt
assert.Check(t, duration.Set("300s"))
assert.Check(t, is.Equal(time.Duration(300*10e8), *duration.Value()))
assert.Check(t, is.Error(duration.Set("-300s"), "duration cannot be negative"))
}