@@ -1981,6 +1981,29 @@ public void setHashReplaceExisting() {
1981
1981
1982
1982
@ Test
1983
1983
public void addArrayAppend () {
1984
+ MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
1985
+ "add_array('array[].$append')"
1986
+ ),
1987
+ i -> {
1988
+ i .startRecord ("1" );
1989
+ i .startEntity ("array[]" );
1990
+ i .literal ("1" , "foo" );
1991
+ i .endEntity ();
1992
+ i .endRecord ();
1993
+ },
1994
+ (o , f ) -> {
1995
+ o .get ().startRecord ("1" );
1996
+ o .get ().startEntity ("array[]" );
1997
+ o .get ().literal ("1" , "foo" );
1998
+ o .get ().startEntity ("2[]" );
1999
+ f .apply (2 ).endEntity ();
2000
+ o .get ().endRecord ();
2001
+ }
2002
+ );
2003
+ }
2004
+
2005
+ @ Test
2006
+ public void addArrayAppendNested () {
1984
2007
MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
1985
2008
"add_array('array[].$append.test[]')"
1986
2009
),
@@ -2005,6 +2028,29 @@ public void addArrayAppend() {
2005
2028
2006
2029
@ Test
2007
2030
public void setArrayAppend () {
2031
+ MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
2032
+ "set_array('array[].$append')"
2033
+ ),
2034
+ i -> {
2035
+ i .startRecord ("1" );
2036
+ i .startEntity ("array[]" );
2037
+ i .literal ("1" , "foo" );
2038
+ i .endEntity ();
2039
+ i .endRecord ();
2040
+ },
2041
+ (o , f ) -> {
2042
+ o .get ().startRecord ("1" );
2043
+ o .get ().startEntity ("array[]" );
2044
+ o .get ().literal ("1" , "foo" );
2045
+ o .get ().startEntity ("2[]" );
2046
+ f .apply (2 ).endEntity ();
2047
+ o .get ().endRecord ();
2048
+ }
2049
+ );
2050
+ }
2051
+
2052
+ @ Test
2053
+ public void setArrayAppendNested () {
2008
2054
MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
2009
2055
"set_array('array[].$append.test[]')"
2010
2056
),
@@ -2047,6 +2093,30 @@ public void setArrayLast() {
2047
2093
);
2048
2094
}
2049
2095
2096
+ @ Test
2097
+ public void setArrayLastNested () {
2098
+ MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
2099
+ "set_array('array[].$last.test[]')"
2100
+ ),
2101
+ i -> {
2102
+ i .startRecord ("1" );
2103
+ i .startEntity ("array[]" );
2104
+ i .startEntity ("1" );
2105
+ i .endEntity ();
2106
+ i .endEntity ();
2107
+ i .endRecord ();
2108
+ },
2109
+ (o , f ) -> {
2110
+ o .get ().startRecord ("1" );
2111
+ o .get ().startEntity ("array[]" );
2112
+ o .get ().startEntity ("1" );
2113
+ o .get ().startEntity ("test[]" );
2114
+ f .apply (3 ).endEntity ();
2115
+ o .get ().endRecord ();
2116
+ }
2117
+ );
2118
+ }
2119
+
2050
2120
@ Test
2051
2121
public void addFieldAppend () {
2052
2122
MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
@@ -2070,6 +2140,30 @@ public void addFieldAppend() {
2070
2140
);
2071
2141
}
2072
2142
2143
+ @ Test
2144
+ public void addFieldAppendNested () {
2145
+ MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
2146
+ "add_field('array[].$append.test', 'bar')"
2147
+ ),
2148
+ i -> {
2149
+ i .startRecord ("1" );
2150
+ i .startEntity ("array[]" );
2151
+ i .literal ("1" , "foo" );
2152
+ i .endEntity ();
2153
+ i .endRecord ();
2154
+ },
2155
+ (o , f ) -> {
2156
+ o .get ().startRecord ("1" );
2157
+ o .get ().startEntity ("array[]" );
2158
+ o .get ().literal ("1" , "foo" );
2159
+ o .get ().startEntity ("2" );
2160
+ o .get ().literal ("test" , "bar" );
2161
+ f .apply (2 ).endEntity ();
2162
+ o .get ().endRecord ();
2163
+ }
2164
+ );
2165
+ }
2166
+
2073
2167
@ Test
2074
2168
public void setFieldAppend () {
2075
2169
MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
@@ -2082,6 +2176,29 @@ public void setFieldAppend() {
2082
2176
i .endEntity ();
2083
2177
i .endRecord ();
2084
2178
},
2179
+ o -> {
2180
+ o .get ().startRecord ("1" );
2181
+ o .get ().startEntity ("array[]" );
2182
+ o .get ().literal ("1" , "foo" );
2183
+ o .get ().literal ("2" , "test" );
2184
+ o .get ().endEntity ();
2185
+ o .get ().endRecord ();
2186
+ }
2187
+ );
2188
+ }
2189
+
2190
+ @ Test
2191
+ public void setFieldAppendNested () {
2192
+ MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
2193
+ "set_field('array[].$append.test', 'bar')"
2194
+ ),
2195
+ i -> {
2196
+ i .startRecord ("1" );
2197
+ i .startEntity ("array[]" );
2198
+ i .literal ("1" , "foo" );
2199
+ i .endEntity ();
2200
+ i .endRecord ();
2201
+ },
2085
2202
o -> {
2086
2203
o .get ().startRecord ("1" );
2087
2204
o .get ().startEntity ("array[]" );
@@ -2114,8 +2231,57 @@ public void setFieldLast() {
2114
2231
);
2115
2232
}
2116
2233
2234
+ @ Test
2235
+ public void setFieldLastNested () {
2236
+ MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
2237
+ "set_field('array[].$last.test', 'baz')"
2238
+ ),
2239
+ i -> {
2240
+ i .startRecord ("1" );
2241
+ i .startEntity ("array[]" );
2242
+ i .startEntity ("1" );
2243
+ i .literal ("foo" , "bar" );
2244
+ i .endEntity ();
2245
+ i .endEntity ();
2246
+ i .endRecord ();
2247
+ },
2248
+ (o , f ) -> {
2249
+ o .get ().startRecord ("1" );
2250
+ o .get ().startEntity ("array[]" );
2251
+ o .get ().startEntity ("1" );
2252
+ o .get ().literal ("foo" , "bar" );
2253
+ o .get ().literal ("test" , "baz" );
2254
+ f .apply (2 ).endEntity ();
2255
+ o .get ().endRecord ();
2256
+ }
2257
+ );
2258
+ }
2259
+
2117
2260
@ Test
2118
2261
public void addHashAppend () {
2262
+ MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
2263
+ "add_hash('array[].$append')"
2264
+ ),
2265
+ i -> {
2266
+ i .startRecord ("1" );
2267
+ i .startEntity ("array[]" );
2268
+ i .literal ("1" , "foo" );
2269
+ i .endEntity ();
2270
+ i .endRecord ();
2271
+ },
2272
+ (o , f ) -> {
2273
+ o .get ().startRecord ("1" );
2274
+ o .get ().startEntity ("array[]" );
2275
+ o .get ().literal ("1" , "foo" );
2276
+ o .get ().startEntity ("2" );
2277
+ f .apply (2 ).endEntity ();
2278
+ o .get ().endRecord ();
2279
+ }
2280
+ );
2281
+ }
2282
+
2283
+ @ Test
2284
+ public void addHashAppendNested () {
2119
2285
MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
2120
2286
"add_hash('array[].$append.test')"
2121
2287
),
@@ -2140,6 +2306,29 @@ public void addHashAppend() {
2140
2306
2141
2307
@ Test
2142
2308
public void setHashAppend () {
2309
+ MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
2310
+ "set_hash('array[].$append')"
2311
+ ),
2312
+ i -> {
2313
+ i .startRecord ("1" );
2314
+ i .startEntity ("array[]" );
2315
+ i .literal ("1" , "foo" );
2316
+ i .endEntity ();
2317
+ i .endRecord ();
2318
+ },
2319
+ (o , f ) -> {
2320
+ o .get ().startRecord ("1" );
2321
+ o .get ().startEntity ("array[]" );
2322
+ o .get ().literal ("1" , "foo" );
2323
+ o .get ().startEntity ("2" );
2324
+ f .apply (2 ).endEntity ();
2325
+ o .get ().endRecord ();
2326
+ }
2327
+ );
2328
+ }
2329
+
2330
+ @ Test
2331
+ public void setHashAppendNested () {
2143
2332
MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
2144
2333
"set_hash('array[].$append.test')"
2145
2334
),
@@ -2182,6 +2371,32 @@ public void setHashLast() {
2182
2371
);
2183
2372
}
2184
2373
2374
+ @ Test
2375
+ public void setHashLastNested () {
2376
+ MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
2377
+ "set_hash('array[].$last.test')"
2378
+ ),
2379
+ i -> {
2380
+ i .startRecord ("1" );
2381
+ i .startEntity ("array[]" );
2382
+ i .startEntity ("1" );
2383
+ i .literal ("foo" , "bar" );
2384
+ i .endEntity ();
2385
+ i .endEntity ();
2386
+ i .endRecord ();
2387
+ },
2388
+ (o , f ) -> {
2389
+ o .get ().startRecord ("1" );
2390
+ o .get ().startEntity ("array[]" );
2391
+ o .get ().startEntity ("1" );
2392
+ o .get ().literal ("foo" , "bar" );
2393
+ o .get ().startEntity ("test" );
2394
+ f .apply (3 ).endEntity ();
2395
+ o .get ().endRecord ();
2396
+ }
2397
+ );
2398
+ }
2399
+
2185
2400
@ Test
2186
2401
public void paste () {
2187
2402
MetafixTestHelpers .assertFix (streamReceiver , Arrays .asList (
0 commit comments