MCPcopy
hub / github.com/uber-go/zap / TestJSONEncoderObjectFields

Function TestJSONEncoderObjectFields

zapcore/json_encoder_impl_test.go:112–289  ·  zapcore/json_encoder_impl_test.go::TestJSONEncoderObjectFields
(t *testing.T)

Source from the content-addressed store, hash-verified

110}
111
112func TestJSONEncoderObjectFields(t *testing.T) {
113 tests := []struct {
114 desc string
115 expected string
116 f func(Encoder)
117 }{
118 {"binary", `"k":"YWIxMg=="`, func(e Encoder) { e.AddBinary("k", []byte("ab12")) }},
119 {"bool", `"k\\":true`, func(e Encoder) { e.AddBool(`k\`, true) }}, // test key escaping once
120 {"bool", `"k":true`, func(e Encoder) { e.AddBool("k", true) }},
121 {"bool", `"k":false`, func(e Encoder) { e.AddBool("k", false) }},
122 {"byteString", `"k":"v\\"`, func(e Encoder) { e.AddByteString(`k`, []byte(`v\`)) }},
123 {"byteString", `"k":"v"`, func(e Encoder) { e.AddByteString("k", []byte("v")) }},
124 {"byteString", `"k":""`, func(e Encoder) { e.AddByteString("k", []byte{}) }},
125 {"byteString", `"k":""`, func(e Encoder) { e.AddByteString("k", nil) }},
126 {"complex128", `"k":"1+2i"`, func(e Encoder) { e.AddComplex128("k", 1+2i) }},
127 {"complex128/negative_i", `"k":"1-2i"`, func(e Encoder) { e.AddComplex128("k", 1-2i) }},
128 {"complex64", `"k":"1+2i"`, func(e Encoder) { e.AddComplex64("k", 1+2i) }},
129 {"complex64/negative_i", `"k":"1-2i"`, func(e Encoder) { e.AddComplex64("k", 1-2i) }},
130 {"complex64", `"k":"2.71+3.14i"`, func(e Encoder) { e.AddComplex64("k", 2.71+3.14i) }},
131 {"duration", `"k":0.000000001`, func(e Encoder) { e.AddDuration("k", 1) }},
132 {"duration/negative", `"k":-0.000000001`, func(e Encoder) { e.AddDuration("k", -1) }},
133 {"float64", `"k":1`, func(e Encoder) { e.AddFloat64("k", 1.0) }},
134 {"float64", `"k":10000000000`, func(e Encoder) { e.AddFloat64("k", 1e10) }},
135 {"float64", `"k":"NaN"`, func(e Encoder) { e.AddFloat64("k", math.NaN()) }},
136 {"float64", `"k":"+Inf"`, func(e Encoder) { e.AddFloat64("k", math.Inf(1)) }},
137 {"float64", `"k":"-Inf"`, func(e Encoder) { e.AddFloat64("k", math.Inf(-1)) }},
138 {"float64/pi", `"k":3.141592653589793`, func(e Encoder) { e.AddFloat64("k", math.Pi) }},
139 {"float32", `"k":1`, func(e Encoder) { e.AddFloat32("k", 1.0) }},
140 {"float32", `"k":2.71`, func(e Encoder) { e.AddFloat32("k", 2.71) }},
141 {"float32", `"k":0.1`, func(e Encoder) { e.AddFloat32("k", 0.1) }},
142 {"float32", `"k":10000000000`, func(e Encoder) { e.AddFloat32("k", 1e10) }},
143 {"float32", `"k":"NaN"`, func(e Encoder) { e.AddFloat32("k", float32(math.NaN())) }},
144 {"float32", `"k":"+Inf"`, func(e Encoder) { e.AddFloat32("k", float32(math.Inf(1))) }},
145 {"float32", `"k":"-Inf"`, func(e Encoder) { e.AddFloat32("k", float32(math.Inf(-1))) }},
146 {"float32/pi", `"k":3.1415927`, func(e Encoder) { e.AddFloat32("k", math.Pi) }},
147 {"int", `"k":42`, func(e Encoder) { e.AddInt("k", 42) }},
148 {"int64", `"k":42`, func(e Encoder) { e.AddInt64("k", 42) }},
149 {"int64/min", `"k":-9223372036854775808`, func(e Encoder) { e.AddInt64("k", math.MinInt64) }},
150 {"int64/max", `"k":9223372036854775807`, func(e Encoder) { e.AddInt64("k", math.MaxInt64) }},
151 {"int32", `"k":42`, func(e Encoder) { e.AddInt32("k", 42) }},
152 {"int32/min", `"k":-2147483648`, func(e Encoder) { e.AddInt32("k", math.MinInt32) }},
153 {"int32/max", `"k":2147483647`, func(e Encoder) { e.AddInt32("k", math.MaxInt32) }},
154 {"int16", `"k":42`, func(e Encoder) { e.AddInt16("k", 42) }},
155 {"int16/min", `"k":-32768`, func(e Encoder) { e.AddInt16("k", math.MinInt16) }},
156 {"int16/max", `"k":32767`, func(e Encoder) { e.AddInt16("k", math.MaxInt16) }},
157 {"int8", `"k":42`, func(e Encoder) { e.AddInt8("k", 42) }},
158 {"int8/min", `"k":-128`, func(e Encoder) { e.AddInt8("k", math.MinInt8) }},
159 {"int8/max", `"k":127`, func(e Encoder) { e.AddInt8("k", math.MaxInt8) }},
160 {"string", `"k":"v\\"`, func(e Encoder) { e.AddString(`k`, `v\`) }},
161 {"string", `"k":"v"`, func(e Encoder) { e.AddString("k", "v") }},
162 {"string", `"k":""`, func(e Encoder) { e.AddString("k", "") }},
163 {"time", `"k":1`, func(e Encoder) { e.AddTime("k", time.Unix(1, 0)) }},
164 {"uint", `"k":42`, func(e Encoder) { e.AddUint("k", 42) }},
165 {"uint64", `"k":42`, func(e Encoder) { e.AddUint64("k", 42) }},
166 {"uint64/max", `"k":18446744073709551615`, func(e Encoder) { e.AddUint64("k", math.MaxUint64) }},
167 {"uint32", `"k":42`, func(e Encoder) { e.AddUint32("k", 42) }},
168 {"uint32/max", `"k":4294967295`, func(e Encoder) { e.AddUint32("k", math.MaxUint32) }},
169 {"uint16", `"k":42`, func(e Encoder) { e.AddUint16("k", 42) }},

Callers

nothing calls this directly

Calls 15

turduckensTypeAlias · 0.85
ObjectMarshalerFuncFuncType · 0.85
assertOutputFunction · 0.85
AddBinaryMethod · 0.65
AddBoolMethod · 0.65
AddByteStringMethod · 0.65
AddComplex128Method · 0.65
AddComplex64Method · 0.65
AddDurationMethod · 0.65
AddFloat64Method · 0.65
AddFloat32Method · 0.65
AddIntMethod · 0.65

Tested by

no test coverage detected