MCPcopy Create free account
hub / github.com/chronoxor/FastBinaryEncoding / TestSerializationJsonEnums

Function TestSerializationJsonEnums

projects/Go/tests/enums_test.go:212–304  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

210}
211
212func TestSerializationJsonEnums(t *testing.T) {
213 // Define a source JSON string
214 json := []byte(`{"byte0":0,"byte1":0,"byte2":1,"byte3":254,"byte4":255,"byte5":254,"char0":0,"char1":49,"char2":50,"char3":51,"char4":52,"char5":51,"wchar0":0,"wchar1":1092,"wchar2":1093,"wchar3":1365,"wchar4":1366,"wchar5":1365,"int8b0":0,"int8b1":-128,"int8b2":-127,"int8b3":126,"int8b4":127,"int8b5":126,"uint8b0":0,"uint8b1":0,"uint8b2":1,"uint8b3":254,"uint8b4":255,"uint8b5":254,"int16b0":0,"int16b1":-32768,"int16b2":-32767,"int16b3":32766,"int16b4":32767,"int16b5":32766,"uint16b0":0,"uint16b1":0,"uint16b2":1,"uint16b3":65534,"uint16b4":65535,"uint16b5":65534,"int32b0":0,"int32b1":-2147483648,"int32b2":-2147483647,"int32b3":2147483646,"int32b4":2147483647,"int32b5":2147483646,"uint32b0":0,"uint32b1":0,"uint32b2":1,"uint32b3":4294967294,"uint32b4":4294967295,"uint32b5":4294967294,"int64b0":0,"int64b1":-9223372036854775807,"int64b2":-9223372036854775806,"int64b3":9223372036854775806,"int64b4":9223372036854775807,"int64b5":9223372036854775806,"uint64b0":0,"uint64b1":0,"uint64b2":1,"uint64b3":18446744073709551614,"uint64b4":18446744073709551615,"uint64b5":18446744073709551614}`)
215
216 // Create enums from the source JSON string
217 enums1, _ := enums.NewEnumsFromJSON(json)
218
219 // Serialize enums to the JSON string
220 json, _ = enums1.JSON()
221
222 // Check the serialized JSON size
223 assert.NotEmpty(t, json)
224
225 // Deserialize enums from the JSON string
226 enums2, _ := enums.NewEnumsFromJSON(json)
227
228 assert.EqualValues(t, enums2.Byte0, enums.EnumByte_ENUM_VALUE_0)
229 assert.EqualValues(t, enums2.Byte1, enums.EnumByte_ENUM_VALUE_1)
230 assert.EqualValues(t, enums2.Byte2, enums.EnumByte_ENUM_VALUE_2)
231 assert.EqualValues(t, enums2.Byte3, enums.EnumByte_ENUM_VALUE_3)
232 assert.EqualValues(t, enums2.Byte4, enums.EnumByte_ENUM_VALUE_4)
233 assert.EqualValues(t, enums2.Byte5, enums1.Byte3)
234
235 assert.EqualValues(t, enums2.Char0, enums.EnumChar_ENUM_VALUE_0)
236 assert.EqualValues(t, enums2.Char1, enums.EnumChar_ENUM_VALUE_1)
237 assert.EqualValues(t, enums2.Char2, enums.EnumChar_ENUM_VALUE_2)
238 assert.EqualValues(t, enums2.Char3, enums.EnumChar_ENUM_VALUE_3)
239 assert.EqualValues(t, enums2.Char4, enums.EnumChar_ENUM_VALUE_4)
240 assert.EqualValues(t, enums2.Char5, enums1.Char3)
241
242 assert.EqualValues(t, enums2.Wchar0, enums.EnumWChar_ENUM_VALUE_0)
243 assert.EqualValues(t, enums2.Wchar1, enums.EnumWChar_ENUM_VALUE_1)
244 assert.EqualValues(t, enums2.Wchar2, enums.EnumWChar_ENUM_VALUE_2)
245 assert.EqualValues(t, enums2.Wchar3, enums.EnumWChar_ENUM_VALUE_3)
246 assert.EqualValues(t, enums2.Wchar4, enums.EnumWChar_ENUM_VALUE_4)
247 assert.EqualValues(t, enums2.Wchar5, enums1.Wchar3)
248
249 assert.EqualValues(t, enums2.Int8b0, enums.EnumInt8_ENUM_VALUE_0)
250 assert.EqualValues(t, enums2.Int8b1, enums.EnumInt8_ENUM_VALUE_1)
251 assert.EqualValues(t, enums2.Int8b2, enums.EnumInt8_ENUM_VALUE_2)
252 assert.EqualValues(t, enums2.Int8b3, enums.EnumInt8_ENUM_VALUE_3)
253 assert.EqualValues(t, enums2.Int8b4, enums.EnumInt8_ENUM_VALUE_4)
254 assert.EqualValues(t, enums2.Int8b5, enums1.Int8b3)
255
256 assert.EqualValues(t, enums2.Uint8b0, enums.EnumUInt8_ENUM_VALUE_0)
257 assert.EqualValues(t, enums2.Uint8b1, enums.EnumUInt8_ENUM_VALUE_1)
258 assert.EqualValues(t, enums2.Uint8b2, enums.EnumUInt8_ENUM_VALUE_2)
259 assert.EqualValues(t, enums2.Uint8b3, enums.EnumUInt8_ENUM_VALUE_3)
260 assert.EqualValues(t, enums2.Uint8b4, enums.EnumUInt8_ENUM_VALUE_4)
261 assert.EqualValues(t, enums2.Uint8b5, enums1.Uint8b3)
262
263 assert.EqualValues(t, enums2.Int16b0, enums.EnumInt16_ENUM_VALUE_0)
264 assert.EqualValues(t, enums2.Int16b1, enums.EnumInt16_ENUM_VALUE_1)
265 assert.EqualValues(t, enums2.Int16b2, enums.EnumInt16_ENUM_VALUE_2)
266 assert.EqualValues(t, enums2.Int16b3, enums.EnumInt16_ENUM_VALUE_3)
267 assert.EqualValues(t, enums2.Int16b4, enums.EnumInt16_ENUM_VALUE_4)
268 assert.EqualValues(t, enums2.Int16b5, enums1.Int16b3)
269

Callers

nothing calls this directly

Calls 1

JSONMethod · 0.45

Tested by

no test coverage detected