Atlas › Test

TestParseDurationDefaultSeconds

Exact test identity: go.temporal.io/server/common/primitives/timestamp/TestParseDurationSuite/TestParseDurationDefaultSeconds

Package
go.temporal.io/server/common/primitives/timestamp
Suite / test hierarchy
TestParseDurationSuite/TestParseDurationDefaultSeconds
Test
TestParseDurationDefaultSeconds
Introduced at
parse_duration.go ×1 Frontier kind: Joint frontier
Covered ranges
5
Covered lines
8
Covered files
1

Covered source

Expand a file to inspect source; the > gutter marks covered lines.

go.temporal.io/server/common/primitives/timestamp/parse_duration.go 8 covered LOC · 5 ranges

Open complete file

22 // ParseDuration is like time.ParseDuration, but supports unit "d" for days
23 // (always interpreted as exactly 24 hours).
24 > func ParseDuration(s string) (time.Duration, error) { parse_duration.go
25 > s = reDays.ReplaceAllStringFunc(s, func(v string) string {
26 fv, err := strconv.ParseFloat(strings.TrimSuffix(v, "d"), 64)
27 if err != nil {
30 return fmt.Sprintf("%fh", 24*fv)
31 })
32 > return time.ParseDuration(s) parse_duration.go
33 }
34
46 // for days (always interpreted as exactly 24 hours), and also supports
47 // unit-less numbers, which are interpreted as seconds.
48 > func ParseDurationDefaultSeconds(s string) (time.Duration, error) { parse_duration.go
49 > if reUnitless.MatchString(s) {
50 > s += "s" parse_duration.go
51 > }
52 > return ParseDuration(s) parse_duration.go
53 }
54