@@ -1069,6 +1069,42 @@ def test_read_empty_bit_buffer(self):
1069
1069
self .assertEqual (CreatorEnum .ONE , creator_object .nested .creator_enum )
1070
1070
self .assertEqual (CreatorBitmask .Values .READ , creator_object .nested .creator_bitmask )
1071
1071
1072
+ def test_read_empty_bytes (self ):
1073
+ text_io = io .StringIO (
1074
+ "{\n " +
1075
+ " \" value\" : 13,\n " +
1076
+ " \" nested\" : {\n " +
1077
+ " \" value\" : 10,\n " +
1078
+ " \" text\" : \" nested\" ,\n " +
1079
+ " \" externData\" : {\n " +
1080
+ " \" bitSize\" : 0,\n " +
1081
+ " \" buffer\" : [\n " +
1082
+ " ]\n " +
1083
+ " },\n " +
1084
+ " \" bytesData\" : {\n " +
1085
+ " \" buffer\" : [\n " +
1086
+ " ]\n " +
1087
+ " },\n " +
1088
+ " \" creatorEnum\" : 0,\n " +
1089
+ " \" creatorBitmask\" : 1\n " +
1090
+ " }\n " +
1091
+ "}"
1092
+ )
1093
+
1094
+ json_reader = JsonReader (text_io )
1095
+ creator_object = json_reader .read (CreatorObject .type_info ())
1096
+ self .assertTrue (creator_object is not None )
1097
+ self .assertTrue (isinstance (creator_object , CreatorObject ))
1098
+
1099
+ self .assertEqual (13 , creator_object .value )
1100
+ self .assertEqual (13 , creator_object .nested .param )
1101
+ self .assertEqual (10 , creator_object .nested .value )
1102
+ self .assertEqual ("nested" , creator_object .nested .text )
1103
+ self .assertEqual (BitBuffer (bytes ()), creator_object .nested .extern_data )
1104
+ self .assertEqual (bytes (), creator_object .nested .bytes_data )
1105
+ self .assertEqual (CreatorEnum .ONE , creator_object .nested .creator_enum )
1106
+ self .assertEqual (CreatorBitmask .Values .READ , creator_object .nested .creator_bitmask )
1107
+
1072
1108
def test_read_stringified_enum (self ):
1073
1109
self ._check_read_stringified_enum ("ONE" , CreatorEnum .ONE )
1074
1110
self ._check_read_stringified_enum ("MinusOne" , CreatorEnum .MINUS_ONE )
0 commit comments