Atlas › Test

TestFloat

Exact test identity: go.temporal.io/server/common/number/TestNumberSuite/TestFloat

Package
go.temporal.io/server/common/number
Suite / test hierarchy
TestNumberSuite/TestFloat
Test
TestFloat
Introduced at
number.go ×4 Frontier kind: Joint frontier
Covered ranges
9
Covered lines
27
Covered files
1

Covered source

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

go.temporal.io/server/common/number/number.go 27 covered LOC · 9 ranges

Open complete file

22 func NewNumber(
23 value any,
24 > ) Number { number.go
25 >
26 > var numberType Type
27 > var number any
28 > switch n := value.(type) {
29 case int8:
30 numberType = TypeInt
59 number = n
60
61 > case float32: number.go
62 > numberType = TypeFloat
63 > number = float64(n)
64 > case float64:
65 > numberType = TypeFloat
66 > number = n
67
68 default:
74 }
75
76 > return Number{ number.go
77 > numberType: numberType,
78 > value: number,
79 > }
80 }
81
82 func (n Number) GetIntOrDefault(
83 defaultValue int,
84 > ) int { number.go
85 > switch n.numberType {
86 > case TypeFloat: number.go
87 > return int(n.value.(float64))
88 case TypeInt:
89 return n.value.(int)
99 func (n Number) GetUintOrDefault(
100 defaultValue uint,
101 > ) uint { number.go
102 > switch n.numberType {
103 > case TypeFloat: number.go
104 > return uint(n.value.(float64))
105 case TypeInt:
106 return uint(n.value.(int))
116 func (n Number) GetFloatOrDefault(
117 defaultValue float64,
118 > ) float64 { number.go
119 > switch n.numberType {
120 > case TypeFloat: number.go
121 > return n.value.(float64)
122 case TypeInt:
123 return float64(n.value.(int))