Skip to content

Commit de33b47

Browse files
committed
fix parser
1 parent b8bd063 commit de33b47

2 files changed

Lines changed: 13 additions & 20 deletions

File tree

app/src/schema_display.c

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -306,11 +306,6 @@ parser_error_t schema_display_tuple(parser_context_t *ctx, parser_tx_t *txObj) {
306306
if (show_field) {
307307
if (tuple_type.has_show_as || tuple_type.has_structured_show_as) {
308308
CHECK_ERROR(append_structured_show_as_title(&tuple_type.structured_show_as, i, &remove_title));
309-
} else {
310-
if (tuple_type.fields_qty > 1) {
311-
CHECK_ERROR(append_item_title_index(i));
312-
remove_title = true;
313-
}
314309
}
315310
}
316311

@@ -415,7 +410,7 @@ parser_error_t schema_display_vec(parser_context_t *ctx, parser_tx_t *txObj) {
415410
for (uint32_t i = 0; i < vec_len; i++) {
416411
CHECK_ERROR(read_link(&txObj->merkle_proofs.leaves.data, &vec_type.value));
417412
CHECK_ERROR(schema_reset_leaf_offset(&txObj->merkle_proofs.leaves));
418-
413+
CHECK_ERROR(append_item_title_index(i));
419414
switch (vec_type.value.tag) {
420415
case LINK_BY_INDEX:
421416
CHECK_ERROR(schema_display_generic_by_index(ctx, txObj, vec_type.value.data.by_index));
@@ -428,6 +423,7 @@ parser_error_t schema_display_vec(parser_context_t *ctx, parser_tx_t *txObj) {
428423
print_string("Vec field is not a link by index\n");
429424
return parser_unexpected_type;
430425
}
426+
CHECK_ERROR(remove_last_item_title())
431427
}
432428

433429
return parser_ok;

tests/testcases.json

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
[
22
{
33
"index": 0,
4-
"name": "Bank_Transfer",
54
"transaction_blob": "0001000b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b1027000000000000000000000000000017171717171717171717171717171717171717171717171717171717171717060000000000000000000000000000000000e876481700000000000000000000000100ca9a3b0000000000ca9a3b00000000e110000000000000",
65
"leaves_data": "1000000059010000000b00000052756e74696d6543616c6c0c0000000400000042616e6b0000010004000000000000001100000053657175656e63657252656769737472790100010016000000000000000b00000056616c7565536574746572020001001d00000000000000120000004174746573746572496e63656e74697665730300010025000000000000001000000050726f766572496e63656e7469766573040001002a00000000000000080000004163636f756e7473050001002e000000000000000a000000556e697175656e6573730600010033000000000000000a000000436861696e53746174650700010035000000000000000b000000426c6f6253746f72616765080001003600000000000000090000005061796d61737465720900010037000000000000000300000045766d0a00010051000000000000000d0000004163636573735061747465726e0b0001005400000000000000010000190000000200000001000000000500000000000000000000000000000088000000000b00000043616c6c4d657373616765050000000b000000437265617465546f6b656e000001000600000000000000080000005472616e73666572010001001000000000000000040000004275726e020001001300000000000000040000004d696e7403000100140000000000000006000000467265657a6504000100150000000000000000000014000000020000000100000001000901000000000000000042000000000c0000004d756c74694164647265737302000000080000005374616e64617264000001000a0000000000000002000000566d010001000c00000000000000010000190000000200000001000000000b00000000000000000000000000000023000000020000000100000001011c000000000000000303000000736f760000000000000000009300000001270000005f5f536f765669727475616c57616c6c65745f43616c6c4d6573736167655f5472616e73666572011a0000005472616e7366657220746f2061646472657373207b7d207b7d2e01070000007c7b546f7d7b7d000200000002000000746f00000009000000000000000000000005000000636f696e7300000011000000000000000000000001010000000000000000860000000105000000436f696e7301170000007b7d20636f696e73206f6620746f6b656e204944207b7d01140000007b416d6f756e747c7d7b546f6b656e2049447c7d010200000006000000616d6f756e740000010009020101000000000000001f000000000000000000000008000000746f6b656e5f69640000001200000000000000000000000000330000000200000001000000010120000000000000000306000000746f6b656e5f0109000000746f6b656e5f69647300000000000000000a0000000300210000000000000019000000020000000100000000220000000000000000000000000000000d0000000c020000000000000001000801c60000000109000000547844657461696c730001370000007b4d6178205072696f72697479204665657c7d7c7b4d6178204665657c7d7c7b476173204c696d69747c7d7c7b436861696e2049447c7d0004000000150000006d61785f7072696f726974795f6665655f626970730001006a0000000000000000000000070000006d61785f666565000000080000000000000000000000090000006761735f6c696d697400010020000000000000000000000008000000636861696e5f6964000101000801000000000000140000000200000001000000010008010000000000000000880000000113000000556e7369676e65645472616e73616374696f6e0001120000007b7d7c7b47656e65726174696f6e7d7c7b7d00030000000c00000072756e74696d655f63616c6c0000000300000000000000000000000a00000067656e65726174696f6e000101000801000000000700000064657461696c730000006900000000000000000000000000",
76
"leaves_index": "10000000030000000000000004000000000000000500000000000000080000000000000009000000000000000a000000000000000b0000000000000010000000000000001100000000000000120000000000000020000000000000002100000000000000220000000000000069000000000000006a000000000000006b00000000000000",
@@ -40,7 +39,6 @@
4039
},
4140
{
4241
"index": 1,
43-
"name": "Bank_Mint",
4442
"transaction_blob": "0003102700000000000000000000000000001717171717171717171717171717171717171717171717171717171717171706000b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0000000000000000000000000000000000e876481700000000000000000000000100ca9a3b0000000000ca9a3b00000000e110000000000000",
4543
"leaves_data": "1000000059010000000b00000052756e74696d6543616c6c0c0000000400000042616e6b0000010004000000000000001100000053657175656e63657252656769737472790100010016000000000000000b00000056616c7565536574746572020001001d00000000000000120000004174746573746572496e63656e74697665730300010025000000000000001000000050726f766572496e63656e7469766573040001002a00000000000000080000004163636f756e7473050001002e000000000000000a000000556e697175656e6573730600010033000000000000000a000000436861696e53746174650700010035000000000000000b000000426c6f6253746f72616765080001003600000000000000090000005061796d61737465720900010037000000000000000300000045766d0a00010051000000000000000d0000004163636573735061747465726e0b0001005400000000000000010000190000000200000001000000000500000000000000000000000000000088000000000b00000043616c6c4d657373616765050000000b000000437265617465546f6b656e000001000600000000000000080000005472616e73666572010001001000000000000000040000004275726e020001001300000000000000040000004d696e7403000100140000000000000006000000467265657a6504000100150000000000000000000014000000020000000100000001000901000000000000000042000000000c0000004d756c74694164647265737302000000080000005374616e64617264000001000a0000000000000002000000566d010001000c00000000000000010000190000000200000001000000000b00000000000000000000000000000023000000020000000100000001011c000000000000000303000000736f76000000000000000000860000000105000000436f696e7301170000007b7d20636f696e73206f6620746f6b656e204944207b7d01140000007b416d6f756e747c7d7b546f6b656e2049447c7d010200000006000000616d6f756e740000010009020101000000000000001f000000000000000000000008000000746f6b656e5f69640000001200000000000000000000000000330000000200000001000000010120000000000000000306000000746f6b656e5f0109000000746f6b656e5f69647300000000000000006b00000001230000005f5f536f765669727475616c57616c6c65745f43616c6c4d6573736167655f4d696e740000000200000005000000636f696e730000001100000000000000000000000f0000006d696e745f746f5f6164647265737300000009000000000000000000000000000a0000000300210000000000000019000000020000000100000000220000000000000000000000000000000d0000000c020000000000000001000801c60000000109000000547844657461696c730001370000007b4d6178205072696f72697479204665657c7d7c7b4d6178204665657c7d7c7b476173204c696d69747c7d7c7b436861696e2049447c7d0004000000150000006d61785f7072696f726974795f6665655f626970730001006a0000000000000000000000070000006d61785f666565000000080000000000000000000000090000006761735f6c696d697400010020000000000000000000000008000000636861696e5f6964000101000801000000000000140000000200000001000000010008010000000000000000880000000113000000556e7369676e65645472616e73616374696f6e0001120000007b7d7c7b47656e65726174696f6e7d7c7b7d00030000000c00000072756e74696d655f63616c6c0000000300000000000000000000000a00000067656e65726174696f6e000101000801000000000700000064657461696c730000006900000000000000000000000000",
4644
"leaves_index": "10000000030000000000000004000000000000000500000000000000080000000000000009000000000000000a000000000000000b0000000000000011000000000000001200000000000000140000000000000020000000000000002100000000000000220000000000000069000000000000006a000000000000006b00000000000000",
@@ -79,7 +77,6 @@
7977
},
8078
{
8179
"index": 2,
82-
"name": "Paymaster_RegisterPaymaster",
8380
"transaction_blob": "09000001102700000000000000000000000000000001d0070000000000000000000000000000d007000000000000000000000000000001320000000000000001000000000b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0101000000000b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b000000000000000000000000000000000000e876481700000000000000000000000100ca9a3b0000000000ca9a3b00000000e110000000000000",
8481
"leaves_data": "1a00000059010000000b00000052756e74696d6543616c6c0c0000000400000042616e6b0000010004000000000000001100000053657175656e63657252656769737472790100010016000000000000000b00000056616c7565536574746572020001001d00000000000000120000004174746573746572496e63656e74697665730300010025000000000000001000000050726f766572496e63656e7469766573040001002a00000000000000080000004163636f756e7473050001002e000000000000000a000000556e697175656e6573730600010033000000000000000a000000436861696e53746174650700010035000000000000000b000000426c6f6253746f72616765080001003600000000000000090000005061796d61737465720900010037000000000000000300000045766d0a00010051000000000000000d0000004163636573735061747465726e0b000100540000000000000001000014000000020000000100000001000901000000000000000042000000000c0000004d756c74694164647265737302000000080000005374616e64617264000001000a0000000000000002000000566d010001000c00000000000000010000190000000200000001000000000b00000000000000000000000000000023000000020000000100000001011c000000000000000303000000736f760000000000000000000a0000000d0009000000000000000a000000030008000000000000000a0000000300210000000000000019000000020000000100000000220000000000000000000000000000000d0000000c020000000000000001000801190000000200000001000000003800000000000000000000000000000078000000000b00000043616c6c4d657373616765030000001100000052656769737465725061796d6173746572000001003900000000000000140000005365745061796572466f7253657175656e6365720100010046000000000000000c000000557064617465506f6c6963790200010047000000000000000000006700000001300000005f5f536f765669727475616c57616c6c65745f43616c6c4d6573736167655f52656769737465725061796d61737465720000000100000006000000706f6c6963790000003a0000000000000000000000010300000000000000010200000000000000b6000000011a0000005061796d6173746572506f6c696379496e697469616c697a6572000000040000001400000064656661756c745f70617965655f706f6c6963790000003b00000000000000000000000600000070617965657300000041000000000000000000000013000000617574686f72697a65645f75706461746572730000000e000000000000000000000015000000617574686f72697a65645f73657175656e63657273000000430000000000000000000000000037000000000b0000005061796565506f6c6963790200000005000000416c6c6f77000001003c000000000000000400000044656e79010000000000ac00000001240000005f5f536f765669727475616c57616c6c65745f5061796565506f6c6963795f416c6c6f7700000004000000070000006d61785f6665650000000f0000000000000000000000090000006761735f6c696d69740000002000000000000000000000000d0000006d61785f6761735f70726963650000003d0000000000000000000000110000007472616e73616374696f6e5f6c696d697400000040000000000000000000000000000a00000003003e000000000000002e00000001080000004761735072696365000000010000000500000076616c75650000003f00000000000000000000000000120000000c02000000000000000008000000000000000500000003010008010a0000000d004200000000000000280000000200000002000000000900000000000000000000000000003b0000000000000000000000000000003e0000000014000000417574686f72697a656453657175656e636572730200000003000000416c6c00000004000000536f6d65010001004400000000000000000000c60000000109000000547844657461696c730001370000007b4d6178205072696f72697479204665657c7d7c7b4d6178204665657c7d7c7b476173204c696d69747c7d7c7b436861696e2049447c7d0004000000150000006d61785f7072696f726974795f6665655f626970730001006a0000000000000000000000070000006d61785f666565000000080000000000000000000000090000006761735f6c696d697400010020000000000000000000000008000000636861696e5f6964000101000801000000000000140000000200000001000000010008010000000000000000880000000113000000556e7369676e65645472616e73616374696f6e0001120000007b7d7c7b47656e65726174696f6e7d7c7b7d00030000000c00000072756e74696d655f63616c6c0000000300000000000000000000000a00000067656e65726174696f6e000101000801000000000700000064657461696c730000006900000000000000000000000000",
8582
"leaves_index": "1a0000000300000000000000080000000000000009000000000000000a000000000000000b000000000000000e000000000000000f000000000000002000000000000000210000000000000022000000000000003700000000000000380000000000000039000000000000003a000000000000003b000000000000003c000000000000003d000000000000003e000000000000003f00000000000000400000000000000041000000000000004200000000000000430000000000000069000000000000006a000000000000006b00000000000000",
@@ -109,11 +106,11 @@
109106
"5 | payees/0 [1/3] : RegisterPaymaster/policy:",
110107
"5 | payees/0 [2/3] : sov1pv9skzctpv9skzctpv9skzctpv9skzctp",
111108
"5 | payees/0 [3/3] : v9skzctpv9skqm7ehv",
112-
"6 | payees/1 [1/2] : RegisterPaymaster/policy:",
113-
"6 | payees/1 [2/2] : Deny",
114-
"7 | authorized_updaters [1/3] : RegisterPaymaster/policy:",
115-
"7 | authorized_updaters [2/3] : sov1pv9skzctpv9skzctpv9skzctpv9skzctp",
116-
"7 | authorized_updaters [3/3] : v9skzctpv9skqm7ehv",
109+
"6 | payees/0 [1/2] : RegisterPaymaster/policy:",
110+
"6 | payees/0 [2/2] : Deny",
111+
"7 | authorized_updaters/0 [1/3] : RegisterPaymaster/policy:",
112+
"7 | authorized_updaters/0 [2/3] : sov1pv9skzctpv9skzctpv9skzctpv9skzctp",
113+
"7 | authorized_updaters/0 [3/3] : v9skzctpv9skqm7ehv",
117114
"8 | authorized_sequencers [1/2] : RegisterPaymaster/policy:",
118115
"8 | authorized_sequencers [2/2] : All",
119116
"9 | Max Fee : 100000000000"
@@ -137,11 +134,11 @@
137134
"5 | payees/0 [1/3] : RegisterPaymaster/policy:",
138135
"5 | payees/0 [2/3] : sov1pv9skzctpv9skzctpv9skzctpv9skzctp",
139136
"5 | payees/0 [3/3] : v9skzctpv9skqm7ehv",
140-
"6 | payees/1 [1/2] : RegisterPaymaster/policy:",
141-
"6 | payees/1 [2/2] : Deny",
142-
"7 | authorized_updaters [1/3] : RegisterPaymaster/policy:",
143-
"7 | authorized_updaters [2/3] : sov1pv9skzctpv9skzctpv9skzctpv9skzctp",
144-
"7 | authorized_updaters [3/3] : v9skzctpv9skqm7ehv",
137+
"6 | payees/0 [1/2] : RegisterPaymaster/policy:",
138+
"6 | payees/0 [2/2] : Deny",
139+
"7 | authorized_updaters/0 [1/3] : RegisterPaymaster/policy:",
140+
"7 | authorized_updaters/0 [2/3] : sov1pv9skzctpv9skzctpv9skzctpv9skzctp",
141+
"7 | authorized_updaters/0 [3/3] : v9skzctpv9skqm7ehv",
145142
"8 | authorized_sequencers [1/2] : RegisterPaymaster/policy:",
146143
"8 | authorized_sequencers [2/2] : All",
147144
"9 | Generation : 0",
@@ -152,4 +149,4 @@
152149
"14 | Chain ID : 4321"
153150
]
154151
}
155-
]
152+
]

0 commit comments

Comments
 (0)