@@ -1139,6 +1139,42 @@ public void shouldConvertArrayFromJson() {
1139
1139
);
1140
1140
}
1141
1141
1142
+ @ Test
1143
+ public void shouldConvertNestedArrayFromJson () {
1144
+ MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
1145
+ "from_json(test)"
1146
+ ),
1147
+ i -> {
1148
+ i .startRecord ("1" );
1149
+ i .literal ("test" , "{\" zoo[]\" :[{\" animals[]\" :[[\" ant\" ,\" dog\" ],\" cat\" ,[\" fish\" ,[\" zebra\" ,\" horse\" ],\" hippo\" ],\" giraffe\" ]}]}" );
1150
+ i .endRecord ();
1151
+ },
1152
+ (o , f ) -> {
1153
+ o .get ().startRecord ("1" );
1154
+ o .get ().startEntity ("test" );
1155
+ o .get ().startEntity ("zoo[]" );
1156
+ o .get ().startEntity ("1" );
1157
+ o .get ().startEntity ("animals[]" );
1158
+ o .get ().startEntity ("1[]" );
1159
+ o .get ().literal ("1" , "ant" );
1160
+ o .get ().literal ("2" , "dog" );
1161
+ o .get ().endEntity ();
1162
+ o .get ().literal ("2" , "cat" );
1163
+ o .get ().startEntity ("3[]" );
1164
+ o .get ().literal ("1" , "fish" );
1165
+ o .get ().startEntity ("2[]" );
1166
+ o .get ().literal ("1" , "zebra" );
1167
+ o .get ().literal ("2" , "horse" );
1168
+ o .get ().endEntity ();
1169
+ o .get ().literal ("3" , "hippo" );
1170
+ o .get ().endEntity ();
1171
+ o .get ().literal ("4" , "giraffe" );
1172
+ f .apply (4 ).endEntity ();
1173
+ o .get ().endRecord ();
1174
+ }
1175
+ );
1176
+ }
1177
+
1142
1178
@ Test
1143
1179
public void shouldConvertHashFromJson () {
1144
1180
MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
@@ -3308,6 +3344,45 @@ public void shouldConvertArrayToJson() {
3308
3344
);
3309
3345
}
3310
3346
3347
+ @ Test
3348
+ public void shouldConvertNestedArrayToJson () {
3349
+ MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
3350
+ "to_json(test)"
3351
+ ),
3352
+ i -> {
3353
+ i .startRecord ("1" );
3354
+ i .startEntity ("test" );
3355
+ i .startEntity ("zoo[]" );
3356
+ i .startEntity ("1" );
3357
+ i .startEntity ("animals[]" );
3358
+ i .startEntity ("1[]" );
3359
+ i .literal ("1" , "ant" );
3360
+ i .literal ("2" , "dog" );
3361
+ i .endEntity ();
3362
+ i .literal ("2" , "cat" );
3363
+ i .startEntity ("3[]" );
3364
+ i .literal ("1" , "fish" );
3365
+ i .startEntity ("2[]" );
3366
+ i .literal ("1" , "zebra" );
3367
+ i .literal ("2" , "horse" );
3368
+ i .endEntity ();
3369
+ i .literal ("3" , "hippo" );
3370
+ i .endEntity ();
3371
+ i .literal ("4" , "giraffe" );
3372
+ i .endEntity ();
3373
+ i .endEntity ();
3374
+ i .endEntity ();
3375
+ i .endEntity ();
3376
+ i .endRecord ();
3377
+ },
3378
+ o -> {
3379
+ o .get ().startRecord ("1" );
3380
+ o .get ().literal ("test" , "{\" zoo[]\" :[{\" animals[]\" :[[\" ant\" ,\" dog\" ],\" cat\" ,[\" fish\" ,[\" zebra\" ,\" horse\" ],\" hippo\" ],\" giraffe\" ]}]}" );
3381
+ o .get ().endRecord ();
3382
+ }
3383
+ );
3384
+ }
3385
+
3311
3386
@ Test
3312
3387
public void shouldConvertHashToJson () {
3313
3388
MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
0 commit comments