Prevent duplicates (enough this time?)
parent
87b8615d2f
commit
de4779724f
@ -0,0 +1,21 @@
|
||||
package duration
|
||||
|
||||
import (
|
||||
"github.com/xhit/go-str2duration/v2"
|
||||
"time"
|
||||
)
|
||||
|
||||
// ParseDuration parse given duration into time.Duration
|
||||
// or returns -1 if fails
|
||||
func ParseDuration(duration string) time.Duration {
|
||||
if duration == "" {
|
||||
return -1
|
||||
}
|
||||
|
||||
val, err := str2duration.ParseDuration(duration)
|
||||
if err != nil {
|
||||
return -1
|
||||
}
|
||||
|
||||
return val
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
package duration
|
||||
|
||||
import (
|
||||
"testing"
|
||||
"time"
|
||||
)
|
||||
|
||||
func TestParseDuration(t *testing.T) {
|
||||
if ParseDuration("") != -1 {
|
||||
t.Fail()
|
||||
}
|
||||
if ParseDuration("50s") != time.Second*50 {
|
||||
t.Fail()
|
||||
}
|
||||
if ParseDuration("50m") != time.Minute*50 {
|
||||
t.Fail()
|
||||
}
|
||||
if ParseDuration("50h") != time.Hour*50 {
|
||||
t.Fail()
|
||||
}
|
||||
if ParseDuration("50d") != time.Hour*24*50 {
|
||||
t.Fail()
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue