Proto/michelson: handle parsing of D_Ticket constructor
Context
Following !11599 (merged), this MR aims to add the parsing of the newly introduced D_Ticket michelson primitive.
Before this MR, a ticket was represented as Pair %address (Pair %contents %amount) in Michelson, and now it is possible to represent it like Ticket %address %contents_type %contents %amount.
Inside this MR, the tests of tickets.ml and test_ticket_direct_spending.ml are duplicated between the two representation to show that there is absolutely no regression.
The test_ticket_scanner.ml is for testing ticket_scanner.ml which works against the OCaml representation of Michelson, so it doesn't seem critical to test both cases as long as we can parse a single ticket constructor as expected (which is tested via the e2e tests). Hence, with @linoscope we decided not to duplicate these tests.
Second part of #6643 (closed).
Also closes #6756 (closed)
Manually testing the MR
Checklist
-
Document the interface of any function added or modified (see the coding guidelines) -
Document any change to the user interface, including configuration parameters (see node configuration) -
Provide automatic testing (see the testing guide). -
For new features and bug fixes, add an item in the appropriate changelog ( docs/protocols/alpha.rstfor the protocol and the environment,CHANGES.rstat the root of the repository for everything else). -
Select suitable reviewers using the Reviewersfield below. -
Select as Assigneethe next person who should take action on that MR