2025-03-17 20:58:26 +01:00

50 lines
2.0 KiB
JSON

{
"description": "Array",
"bson_type": "0x04",
"test_key": "a",
"valid": [
{
"description": "Empty",
"canonical_bson": "0D000000046100050000000000",
"canonical_extjson": "{\"a\" : []}"
},
{
"description": "Single Element Array",
"canonical_bson": "140000000461000C0000001030000A0000000000",
"canonical_extjson": "{\"a\" : [{\"$numberInt\": \"10\"}]}"
},
{
"description": "Single Element Array with index set incorrectly to empty string",
"degenerate_bson": "130000000461000B00000010000A0000000000",
"canonical_bson": "140000000461000C0000001030000A0000000000",
"canonical_extjson": "{\"a\" : [{\"$numberInt\": \"10\"}]}"
},
{
"description": "Single Element Array with index set incorrectly to ab",
"degenerate_bson": "150000000461000D000000106162000A0000000000",
"canonical_bson": "140000000461000C0000001030000A0000000000",
"canonical_extjson": "{\"a\" : [{\"$numberInt\": \"10\"}]}"
},
{
"description": "Multi Element Array with duplicate indexes",
"degenerate_bson": "1b000000046100130000001030000a000000103000140000000000",
"canonical_bson": "1b000000046100130000001030000a000000103100140000000000",
"canonical_extjson": "{\"a\" : [{\"$numberInt\": \"10\"}, {\"$numberInt\": \"20\"}]}"
}
],
"decodeErrors": [
{
"description": "Array length too long: eats outer terminator",
"bson": "140000000461000D0000001030000A0000000000"
},
{
"description": "Array length too short: leaks terminator",
"bson": "140000000461000B0000001030000A0000000000"
},
{
"description": "Invalid Array: bad string length in field",
"bson": "1A00000004666F6F00100000000230000500000062617A000000"
}
]
}