From 62989ce9a8a62026ff6c3f33268ff14ad05396fc Mon Sep 17 00:00:00 2001 From: Web3 Philosopher Date: Mon, 13 May 2024 19:54:03 +0100 Subject: [PATCH] Bring back integration tests (#42) --- .github/workflows/test.yml | 8 +- integration-tests/Cargo.lock | 141 +++++++++++++++++++++++------- integration-tests/Cargo.toml | 5 +- integration-tests/fuzz/Cargo.toml | 9 +- integration-tests/fuzz/src/lib.rs | 16 ++-- integration-tests/src/lib.rs | 2 +- 6 files changed, 125 insertions(+), 56 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 3d115b0..bec16b5 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -42,10 +42,10 @@ jobs: - name: cargo test run: | -# forge build -# git submodule update --init --recursive -# cd ./integration-tests -# cargo test --release -- --nocapture + forge build + git submodule update --init --recursive + cd ./integration-tests + cargo test --release -- --nocapture fmt: name: Rustfmt diff --git a/integration-tests/Cargo.lock b/integration-tests/Cargo.lock index 11135e8..2bce3c9 100644 --- a/integration-tests/Cargo.lock +++ b/integration-tests/Cargo.lock @@ -68,9 +68,9 @@ dependencies = [ [[package]] name = "ahash" -version = "0.7.6" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" dependencies = [ "getrandom 0.2.10", "once_cell", @@ -79,14 +79,15 @@ dependencies = [ [[package]] name = "ahash" -version = "0.8.3" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if", "getrandom 0.2.10", "once_cell", "version_check", + "zerocopy", ] [[package]] @@ -1696,7 +1697,7 @@ dependencies = [ [[package]] name = "ethers" version = "2.0.8" -source = "git+https://github.com/gakonst/ethers-rs?rev=594627dc1c3b490ba8f513f8f5e23d11448cbcf8#594627dc1c3b490ba8f513f8f5e23d11448cbcf8" +source = "git+https://github.com/polytope-labs/ethers-rs?rev=a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4#a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4" dependencies = [ "ethers-addressbook", "ethers-contract", @@ -1711,7 +1712,7 @@ dependencies = [ [[package]] name = "ethers-addressbook" version = "2.0.8" -source = "git+https://github.com/gakonst/ethers-rs?rev=594627dc1c3b490ba8f513f8f5e23d11448cbcf8#594627dc1c3b490ba8f513f8f5e23d11448cbcf8" +source = "git+https://github.com/polytope-labs/ethers-rs?rev=a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4#a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4" dependencies = [ "ethers-core", "once_cell", @@ -1722,7 +1723,7 @@ dependencies = [ [[package]] name = "ethers-contract" version = "2.0.8" -source = "git+https://github.com/gakonst/ethers-rs?rev=594627dc1c3b490ba8f513f8f5e23d11448cbcf8#594627dc1c3b490ba8f513f8f5e23d11448cbcf8" +source = "git+https://github.com/polytope-labs/ethers-rs?rev=a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4#a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4" dependencies = [ "ethers-contract-abigen", "ethers-contract-derive", @@ -1741,7 +1742,7 @@ dependencies = [ [[package]] name = "ethers-contract-abigen" version = "2.0.8" -source = "git+https://github.com/gakonst/ethers-rs?rev=594627dc1c3b490ba8f513f8f5e23d11448cbcf8#594627dc1c3b490ba8f513f8f5e23d11448cbcf8" +source = "git+https://github.com/polytope-labs/ethers-rs?rev=a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4#a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4" dependencies = [ "Inflector", "dunce", @@ -1764,7 +1765,7 @@ dependencies = [ [[package]] name = "ethers-contract-derive" version = "2.0.8" -source = "git+https://github.com/gakonst/ethers-rs?rev=594627dc1c3b490ba8f513f8f5e23d11448cbcf8#594627dc1c3b490ba8f513f8f5e23d11448cbcf8" +source = "git+https://github.com/polytope-labs/ethers-rs?rev=a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4#a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4" dependencies = [ "Inflector", "ethers-contract-abigen", @@ -1779,7 +1780,7 @@ dependencies = [ [[package]] name = "ethers-core" version = "2.0.8" -source = "git+https://github.com/gakonst/ethers-rs?rev=594627dc1c3b490ba8f513f8f5e23d11448cbcf8#594627dc1c3b490ba8f513f8f5e23d11448cbcf8" +source = "git+https://github.com/polytope-labs/ethers-rs?rev=a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4#a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4" dependencies = [ "arrayvec 0.7.4", "bytes", @@ -1808,7 +1809,7 @@ dependencies = [ [[package]] name = "ethers-etherscan" version = "2.0.8" -source = "git+https://github.com/gakonst/ethers-rs?rev=594627dc1c3b490ba8f513f8f5e23d11448cbcf8#594627dc1c3b490ba8f513f8f5e23d11448cbcf8" +source = "git+https://github.com/polytope-labs/ethers-rs?rev=a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4#a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4" dependencies = [ "ethers-core", "ethers-solc", @@ -1823,7 +1824,7 @@ dependencies = [ [[package]] name = "ethers-middleware" version = "2.0.8" -source = "git+https://github.com/gakonst/ethers-rs?rev=594627dc1c3b490ba8f513f8f5e23d11448cbcf8#594627dc1c3b490ba8f513f8f5e23d11448cbcf8" +source = "git+https://github.com/polytope-labs/ethers-rs?rev=a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4#a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4" dependencies = [ "async-trait", "auto_impl", @@ -1849,8 +1850,9 @@ dependencies = [ [[package]] name = "ethers-providers" version = "2.0.8" -source = "git+https://github.com/gakonst/ethers-rs?rev=594627dc1c3b490ba8f513f8f5e23d11448cbcf8#594627dc1c3b490ba8f513f8f5e23d11448cbcf8" +source = "git+https://github.com/polytope-labs/ethers-rs?rev=a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4#a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4" dependencies = [ + "anyhow", "async-trait", "auto_impl", "base64 0.21.2", @@ -1867,6 +1869,8 @@ dependencies = [ "once_cell", "pin-project", "reqwest", + "reqwest-chain", + "reqwest-middleware", "serde", "serde_json", "thiserror", @@ -1884,7 +1888,7 @@ dependencies = [ [[package]] name = "ethers-signers" version = "2.0.8" -source = "git+https://github.com/gakonst/ethers-rs?rev=594627dc1c3b490ba8f513f8f5e23d11448cbcf8#594627dc1c3b490ba8f513f8f5e23d11448cbcf8" +source = "git+https://github.com/polytope-labs/ethers-rs?rev=a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4#a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4" dependencies = [ "async-trait", "coins-bip32", @@ -1902,7 +1906,7 @@ dependencies = [ [[package]] name = "ethers-solc" version = "2.0.8" -source = "git+https://github.com/gakonst/ethers-rs?rev=594627dc1c3b490ba8f513f8f5e23d11448cbcf8#594627dc1c3b490ba8f513f8f5e23d11448cbcf8" +source = "git+https://github.com/polytope-labs/ethers-rs?rev=a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4#a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4" dependencies = [ "cfg-if", "dirs", @@ -2052,7 +2056,7 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "forge" version = "0.2.0" -source = "git+https://github.com/polytope-labs/foundry?rev=acdfeeb24263903d5ab8135d67c42c8595f54192#acdfeeb24263903d5ab8135d67c42c8595f54192" +source = "git+https://github.com/polytope-labs/foundry?rev=521813b3ebaf1aa05055d1780b555f9001071514#521813b3ebaf1aa05055d1780b555f9001071514" dependencies = [ "comfy-table", "ethers", @@ -2081,7 +2085,7 @@ dependencies = [ [[package]] name = "forge-fmt" version = "0.2.0" -source = "git+https://github.com/polytope-labs/foundry?rev=acdfeeb24263903d5ab8135d67c42c8595f54192#acdfeeb24263903d5ab8135d67c42c8595f54192" +source = "git+https://github.com/polytope-labs/foundry?rev=521813b3ebaf1aa05055d1780b555f9001071514#521813b3ebaf1aa05055d1780b555f9001071514" dependencies = [ "ariadne", "ethers-core", @@ -2096,7 +2100,7 @@ dependencies = [ [[package]] name = "forge-testsuite" version = "0.1.0" -source = "git+https://github.com/polytope-labs/forge-testsuite?rev=ffd80776b9fe743f162108b02742267aff02a60a#ffd80776b9fe743f162108b02742267aff02a60a" +source = "git+https://github.com/polytope-labs/forge-testsuite?rev=9a4e82498e60b6c90c09be1685dfc80bca057fc2#9a4e82498e60b6c90c09be1685dfc80bca057fc2" dependencies = [ "ethers", "ethers-solc", @@ -2119,7 +2123,7 @@ dependencies = [ [[package]] name = "foundry-abi" version = "0.1.0" -source = "git+https://github.com/polytope-labs/foundry?rev=acdfeeb24263903d5ab8135d67c42c8595f54192#acdfeeb24263903d5ab8135d67c42c8595f54192" +source = "git+https://github.com/polytope-labs/foundry?rev=521813b3ebaf1aa05055d1780b555f9001071514#521813b3ebaf1aa05055d1780b555f9001071514" dependencies = [ "ethers-contract", "ethers-contract-abigen", @@ -2133,7 +2137,7 @@ dependencies = [ [[package]] name = "foundry-common" version = "0.1.0" -source = "git+https://github.com/polytope-labs/foundry?rev=acdfeeb24263903d5ab8135d67c42c8595f54192#acdfeeb24263903d5ab8135d67c42c8595f54192" +source = "git+https://github.com/polytope-labs/foundry?rev=521813b3ebaf1aa05055d1780b555f9001071514#521813b3ebaf1aa05055d1780b555f9001071514" dependencies = [ "auto_impl", "clap", @@ -2164,7 +2168,7 @@ dependencies = [ [[package]] name = "foundry-config" version = "0.2.0" -source = "git+https://github.com/polytope-labs/foundry?rev=acdfeeb24263903d5ab8135d67c42c8595f54192#acdfeeb24263903d5ab8135d67c42c8595f54192" +source = "git+https://github.com/polytope-labs/foundry?rev=521813b3ebaf1aa05055d1780b555f9001071514#521813b3ebaf1aa05055d1780b555f9001071514" dependencies = [ "Inflector", "dirs-next", @@ -2194,7 +2198,7 @@ dependencies = [ [[package]] name = "foundry-evm" version = "0.2.0" -source = "git+https://github.com/polytope-labs/foundry?rev=acdfeeb24263903d5ab8135d67c42c8595f54192#acdfeeb24263903d5ab8135d67c42c8595f54192" +source = "git+https://github.com/polytope-labs/foundry?rev=521813b3ebaf1aa05055d1780b555f9001071514#521813b3ebaf1aa05055d1780b555f9001071514" dependencies = [ "auto_impl", "bytes", @@ -2229,7 +2233,7 @@ dependencies = [ [[package]] name = "foundry-macros" version = "0.2.0" -source = "git+https://github.com/polytope-labs/foundry?rev=acdfeeb24263903d5ab8135d67c42c8595f54192#acdfeeb24263903d5ab8135d67c42c8595f54192" +source = "git+https://github.com/polytope-labs/foundry?rev=521813b3ebaf1aa05055d1780b555f9001071514#521813b3ebaf1aa05055d1780b555f9001071514" dependencies = [ "ethers-core", "foundry-macros-impl", @@ -2240,7 +2244,7 @@ dependencies = [ [[package]] name = "foundry-macros-impl" version = "0.0.0" -source = "git+https://github.com/polytope-labs/foundry?rev=acdfeeb24263903d5ab8135d67c42c8595f54192#acdfeeb24263903d5ab8135d67c42c8595f54192" +source = "git+https://github.com/polytope-labs/foundry?rev=521813b3ebaf1aa05055d1780b555f9001071514#521813b3ebaf1aa05055d1780b555f9001071514" dependencies = [ "proc-macro2", "quote", @@ -2250,7 +2254,7 @@ dependencies = [ [[package]] name = "foundry-utils" version = "0.2.0" -source = "git+https://github.com/polytope-labs/foundry?rev=acdfeeb24263903d5ab8135d67c42c8595f54192#acdfeeb24263903d5ab8135d67c42c8595f54192" +source = "git+https://github.com/polytope-labs/foundry?rev=521813b3ebaf1aa05055d1780b555f9001071514#521813b3ebaf1aa05055d1780b555f9001071514" dependencies = [ "dunce", "ethers-addressbook", @@ -2582,7 +2586,7 @@ version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" dependencies = [ - "ahash 0.7.6", + "ahash 0.7.8", ] [[package]] @@ -2591,7 +2595,7 @@ version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ - "ahash 0.8.3", + "ahash 0.8.11", "serde", ] @@ -3273,6 +3277,16 @@ version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" +[[package]] +name = "mime_guess" +version = "2.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef" +dependencies = [ + "mime", + "unicase", +] + [[package]] name = "miniz_oxide" version = "0.7.1" @@ -4213,6 +4227,7 @@ dependencies = [ "js-sys", "log", "mime", + "mime_guess", "once_cell", "percent-encoding", "pin-project-lite", @@ -4232,10 +4247,38 @@ dependencies = [ "winreg", ] +[[package]] +name = "reqwest-chain" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55a50111a567f815937850003bf942f7f8d44a2a6fe0889f9f94f83f005f4e38" +dependencies = [ + "anyhow", + "async-trait", + "reqwest", + "reqwest-middleware", + "task-local-extensions", +] + +[[package]] +name = "reqwest-middleware" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a735987236a8e238bf0296c7e351b999c188ccc11477f311b82b55c93984216" +dependencies = [ + "anyhow", + "async-trait", + "http", + "reqwest", + "serde", + "task-local-extensions", + "thiserror", +] + [[package]] name = "revm" version = "3.3.0" -source = "git+https://github.com/bluealloy/revm/?rev=88337924f4d16ed1f5e4cde12a03d0cb755cd658#88337924f4d16ed1f5e4cde12a03d0cb755cd658" +source = "git+https://github.com/polytope-labs/revm/?rev=c681ca0d51b21a16595cb4c5795832d938ce2dc2#c681ca0d51b21a16595cb4c5795832d938ce2dc2" dependencies = [ "auto_impl", "revm-interpreter", @@ -4247,7 +4290,7 @@ dependencies = [ [[package]] name = "revm-interpreter" version = "1.1.2" -source = "git+https://github.com/bluealloy/revm/?rev=88337924f4d16ed1f5e4cde12a03d0cb755cd658#88337924f4d16ed1f5e4cde12a03d0cb755cd658" +source = "git+https://github.com/polytope-labs/revm/?rev=c681ca0d51b21a16595cb4c5795832d938ce2dc2#c681ca0d51b21a16595cb4c5795832d938ce2dc2" dependencies = [ "derive_more", "enumn", @@ -4259,7 +4302,7 @@ dependencies = [ [[package]] name = "revm-precompile" version = "2.0.3" -source = "git+https://github.com/bluealloy/revm/?rev=88337924f4d16ed1f5e4cde12a03d0cb755cd658#88337924f4d16ed1f5e4cde12a03d0cb755cd658" +source = "git+https://github.com/polytope-labs/revm/?rev=c681ca0d51b21a16595cb4c5795832d938ce2dc2#c681ca0d51b21a16595cb4c5795832d938ce2dc2" dependencies = [ "k256", "num", @@ -4275,7 +4318,7 @@ dependencies = [ [[package]] name = "revm-primitives" version = "1.1.2" -source = "git+https://github.com/bluealloy/revm/?rev=88337924f4d16ed1f5e4cde12a03d0cb755cd658#88337924f4d16ed1f5e4cde12a03d0cb755cd658" +source = "git+https://github.com/polytope-labs/revm/?rev=c681ca0d51b21a16595cb4c5795832d938ce2dc2#c681ca0d51b21a16595cb4c5795832d938ce2dc2" dependencies = [ "auto_impl", "bitvec 1.0.1", @@ -4579,7 +4622,7 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "772575a524feeb803e5b0fcbc6dd9f367e579488197c94c6e4023aad2305774d" dependencies = [ - "ahash 0.8.3", + "ahash 0.8.11", "cfg-if", "hashbrown 0.13.2", ] @@ -5043,6 +5086,7 @@ dependencies = [ "solidity-merkle-trees-test", "sp-core 17.0.0", "sp-trie 17.0.0", + "tokio", "trie-db 0.24.0", ] @@ -5498,7 +5542,7 @@ version = "17.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cba198d0450e16b2d3cd10f5d31560d3ebbd5c7b903184c18e337bb407d02175" dependencies = [ - "ahash 0.8.3", + "ahash 0.8.11", "hash-db 0.15.2", "hashbrown 0.12.3", "lazy_static", @@ -5522,7 +5566,7 @@ version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e4d24d84a0beb44a71dcac1b41980e1edf7fb722c7f3046710136a283cd479b" dependencies = [ - "ahash 0.8.3", + "ahash 0.8.11", "hash-db 0.16.0", "lazy_static", "memory-db 0.32.0", @@ -5800,6 +5844,15 @@ version = "0.12.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d0e916b1148c8e263850e1ebcbd046f333e0683c724876bb0da63ea4373dc8a" +[[package]] +name = "task-local-extensions" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba323866e5d033818e3240feeb9f7db2c4296674e4d9e16b97b7bf8f490434e8" +dependencies = [ + "pin-utils", +] + [[package]] name = "tempfile" version = "3.7.1" @@ -7134,6 +7187,26 @@ version = "1.0.0-rc" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ee746ad3851dd3bc40e4a028ab3b00b99278d929e48957bcb2d111874a7e43e" +[[package]] +name = "zerocopy" +version = "0.7.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.48", +] + [[package]] name = "zeroize" version = "1.6.0" diff --git a/integration-tests/Cargo.toml b/integration-tests/Cargo.toml index 0b57b24..2c5e570 100644 --- a/integration-tests/Cargo.toml +++ b/integration-tests/Cargo.toml @@ -22,9 +22,8 @@ rand = "0.8.5" sp-runtime = "31.0.1" binary-merkle-tree = "13.0.0" -ethers = { git = "https://github.com/gakonst/ethers-rs", rev = "594627dc1c3b490ba8f513f8f5e23d11448cbcf8", features = ["ethers-solc"] } - -forge-testsuite = { git = "https://github.com/polytope-labs/forge-testsuite", rev = "ffd80776b9fe743f162108b02742267aff02a60a" } +ethers = { git = "https://github.com/polytope-labs/ethers-rs", rev = "a61f4fd78cd9a417c74a1609e5007e17f0f0ebb4", features = ["ethers-solc"] } +forge-testsuite = { git = "https://github.com/polytope-labs/forge-testsuite", rev = "9a4e82498e60b6c90c09be1685dfc80bca057fc2" } ckb-merkle-mountain-range = { git = "https://github.com/polytope-labs/merkle-mountain-range", branch = "seun/simplified-mmr" } patricia-merkle-trie = { package = "ethereum-trie", git = "https://github.com/polytope-labs/ethereum-trie", branch = "main" } rs_merkle = { git = "https://github.com/polytope-labs/rs-merkle", branch = "seun/2d-merkle-proofs" } diff --git a/integration-tests/fuzz/Cargo.toml b/integration-tests/fuzz/Cargo.toml index 5dadea6..e803c97 100644 --- a/integration-tests/fuzz/Cargo.toml +++ b/integration-tests/fuzz/Cargo.toml @@ -7,7 +7,7 @@ edition = "2021" cargo-fuzz = true [dependencies] -forge-testsuite = { git = "https://github.com/polytope-labs/forge-testsuite", rev = "ffd80776b9fe743f162108b02742267aff02a60a" } +forge-testsuite = { git = "https://github.com/polytope-labs/forge-testsuite", rev = "9a4e82498e60b6c90c09be1685dfc80bca057fc2" } patricia-merkle-trie = { package = "ethereum-trie", git = "https://github.com/polytope-labs/ethereum-trie", branch = "main" } solidity-merkle-trees-test = { path = "../" } @@ -15,10 +15,7 @@ trie-db = "0.24.0" sp-trie = "17.0.0" sp-core = "17.0.0" -# trie-db = "0.28.0" -# sp-trie = "29.0.0" -# sp-core = "28.0.0" - +tokio = { version = "1.17.0", features = ["macros", "rt-multi-thread"] } libfuzzer-sys = "0.4" [[bin]] @@ -27,4 +24,4 @@ path = "fuzz_targets/trie_proof_invalid.rs" [[bin]] name = "trie_proof_valid" -path = "fuzz_targets/trie_proof_valid.rs" \ No newline at end of file +path = "fuzz_targets/trie_proof_valid.rs" diff --git a/integration-tests/fuzz/src/lib.rs b/integration-tests/fuzz/src/lib.rs index fbea39e..d97a3b8 100644 --- a/integration-tests/fuzz/src/lib.rs +++ b/integration-tests/fuzz/src/lib.rs @@ -4,7 +4,7 @@ use patricia_merkle_trie::{MemoryDB, StorageProof}; use solidity_merkle_trees_test::Token; use sp_core::KeccakHasher; use sp_trie::LayoutV0; -use std::collections::HashSet; +use std::{collections::HashSet, env, path::PathBuf}; use trie_db::{ DBValue, Hasher, Recorder, Trie, TrieDBBuilder, TrieDBMutBuilder, TrieLayout, TrieMut, }; @@ -26,14 +26,14 @@ fn fuzz_to_data(input: &[u8]) -> Vec<(Vec, Vec)> { v = v + 1; v } else { - return result + return result; }; let mut maxkeylen = if let Some(v) = input.get(1) { let mut v = *v & 31u8; v = v + 1; v } else { - return result + return result; }; if maxkeylen < minkeylen { @@ -50,7 +50,7 @@ fn fuzz_to_data(input: &[u8]) -> Vec<(Vec, Vec)> { v = std::cmp::min(maxkeylen, v); v as usize } else { - break + break; }; let key = if input.len() > ix + keylen { input[ix..ix + keylen].to_vec() } else { break }; ix += keylen; @@ -114,7 +114,7 @@ fn test_generate_proof( pub fn fuzz_that_verify_rejects_invalid_proofs(input: &[u8]) { if input.len() < 4 { - return + return; } let random_int = u32::from_le_bytes(input[0..4].try_into().expect("slice is 4 bytes")) as usize; @@ -132,13 +132,13 @@ pub fn fuzz_that_verify_rejects_invalid_proofs(input: &[u8]) { keys.dedup(); if keys.is_empty() { - return + return; } let (root, proof, mut items) = test_generate_proof::>(data, keys); if proof.len() == 0 { - return + return; } // Make all items incorrect. @@ -191,7 +191,7 @@ pub fn fuzz_that_verify_accepts_valid_proofs(input: &[u8]) { let (root, proof, items) = test_generate_proof::>(data, keys); if proof.len() == 0 { - return + return; } let base_dir = env::current_dir().unwrap().parent().unwrap().display().to_string(); diff --git a/integration-tests/src/lib.rs b/integration-tests/src/lib.rs index cc0f763..43d1f7a 100644 --- a/integration-tests/src/lib.rs +++ b/integration-tests/src/lib.rs @@ -1,4 +1,4 @@ -#![allow(unused_parens)] +#![allow(unused_parens, dead_code)] pub mod merkle_mountain_range; pub mod merkle_multi_proof;