-
Notifications
You must be signed in to change notification settings - Fork 858
Conversation
…circuits into mpt-testing
752d895
to
b9a9bb4
Compare
fa47682
to
872b3cf
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice! Only one comment: it would be good to have instructions how to run the tests (how to ignore keccak ...) in bin/mpt-test/README.md.
one comment: "not possible to link to external golang libraries in the same binary". Not sure about this, in our repo we use dynamic library (.so), so we can put 2 golang libs inside 1 rust main bin. |
Keccak is ignored by default! zkevm-circuits/bin/mpt-test/Cargo.toml Line 26 in e3ffe44
So probally it will be nice to explain HOW to run them with keccak 👍 I will add a comment on this. The idea is to run the tests by using Edit: added 0f6d620 |
If I understand correctly, you linked two .so without problems? Btw, is not an Happened to @rrtoledo that when trying to integrate MPT circuit go library in bus-mapping the it crashed really badly with When we joined the two golang libraries everything worked ok, so we just glued together the libraries. |
The code looks good to me! Only problem is I cannot run the script test_mainnet_blocks. I have been looking at it since yesterday with Adria. |
Yep, sorry, meant with keccak. Thanks! |
…circuits into mpt-testing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the work!
Description
This PR:
bin/mpt-test
is a tool to prove mainnet tests, see the README inside for more information./geth-utils
Type of change
Contents
light-client-poc
foldermpt-witness-generator
intogeth-utils
, this includes also renaming the git action workflow file to geth utils.bin/mpt-folder
access-lists
contains JSON files of accesslists of mainnet blockssrc/circuit
contains a circuit and the witness generator to test chained MPT proofs. Well, there's some stuff that is not strictly mandatory to be there - it's taken from light client circuit - but it can be done later.src/cache.rs
it's a proxy server with a cache file. There's a lot of RPC calls to execute this tests and this allows to cache them all into a file, this makes the testing being possible without accessing any RPC server and speeding-up it.How Has This Been Tested?
For the moment, some of the tests are not passing, but the idea is to integrate into CI when tests passes successfully.