23 lines
365 B
Go
23 lines
365 B
Go
package timeutil
|
|
|
|
import (
|
|
"encoding/json"
|
|
"testing"
|
|
)
|
|
|
|
func TestDuration(t *testing.T) {
|
|
js := []byte(`{"foo": "30s"}`)
|
|
|
|
foo := struct{ Foo Duration }{}
|
|
|
|
err := json.Unmarshal(js, &foo)
|
|
if err != nil {
|
|
t.Fatalf("could not unmarshal %q: %s", js, err)
|
|
}
|
|
|
|
if foo.Foo.Seconds() != 30 {
|
|
t.Fatalf("parsed time.Duration wasn't 30 seconds: %s", foo.Foo)
|
|
}
|
|
|
|
}
|