Skip to content

Commit

Permalink
add testcases
Browse files Browse the repository at this point in the history
  • Loading branch information
temaniarpit27 committed Apr 12, 2024
1 parent 89cbdc9 commit 7cebfbf
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 6 deletions.
15 changes: 13 additions & 2 deletions trace_decoder/src/compact/compact_processing_common.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1034,8 +1034,9 @@ mod tests {
compact_mpt_processing::process_compact_mpt_prestate_debug,
compact_processing_common::{key_bytes_to_nibbles, ParserState},
complex_test_payloads::{
TEST_PAYLOAD_1, TEST_PAYLOAD_10, TEST_PAYLOAD_2, TEST_PAYLOAD_3, TEST_PAYLOAD_4,
TEST_PAYLOAD_5, TEST_PAYLOAD_6, TEST_PAYLOAD_7, TEST_PAYLOAD_8, TEST_PAYLOAD_9,
TEST_PAYLOAD_1, TEST_PAYLOAD_10, TEST_PAYLOAD_11, TEST_PAYLOAD_12, TEST_PAYLOAD_2,
TEST_PAYLOAD_3, TEST_PAYLOAD_4, TEST_PAYLOAD_5, TEST_PAYLOAD_6, TEST_PAYLOAD_7,
TEST_PAYLOAD_8, TEST_PAYLOAD_9,
},
};

Expand Down Expand Up @@ -1141,4 +1142,14 @@ mod tests {
init();
TEST_PAYLOAD_10.parse_and_check_hash_matches_with_debug_smt();
}

fn complex_payload_11() {
init();
TEST_PAYLOAD_11.parse_and_check_hash_matches_with_debug_smt();
}

fn complex_payload_12() {
init();
TEST_PAYLOAD_12.parse_and_check_hash_matches_with_debug_smt();
}
}
15 changes: 11 additions & 4 deletions trace_decoder/src/compact/complex_test_payloads.rs
Original file line number Diff line number Diff line change
Expand Up @@ -35,23 +35,30 @@ pub(crate) const TEST_PAYLOAD_6: TestProtocolInputAndRoot = TestProtocolInputAnd
root_str: "135a0c66146c60d7f78049b3a3486aae3e155015db041a4650966e001f9ba301",
};

pub(crate) const TEST_PAYLOAD_7: TestProtocolInputAndRoot = TestProtocolInputAndRoot { byte_str: "01020302030203020102030203070354dbc6981a11fc2b000c635bfa7c47676b25c87d395820dae2aa361dfd1ca020a396615627d436107c35eff9fe7738a3512819782d706a58205f58e3a2316349923ce3780f8d587db2d72378aed66a8261c916544fa6846ca5030fe25b763f0806d8d0c4207d7d75d6ffc29aa68d453a706b6e48170f973b97180201031f4a9968d4864c15adc3ed2e8e5f16c3c0e06b4ffce615d7625e67a6f83324d80202020302030203038ebb1bd567318fff875f6b3754e347e153752094ab0426cfeac776e7ec9a9366070154ff6250d0e86a2465b0c1bf8e36409503d6a269634108034696e31d313fedc21d6cdb888864e901c34b49d1058639ca8c9924ce3f14d86a0377d0a35ad9d26ef9d4f8f4d95c4329218a5ab2f5495f245f3e844346501a861b0203020203ff2d60ea64b3ddc8a790ad37a37fdf985f6fff41e7eee8ed5aa92c2ab6263a78038718e1addf547b6ca1f97ad53186d20fec6a9a278246fed00954ffd91d6511670203020302030203070354a40d5f56745a118d0906a34e69aec8c0db1cb8fa5820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54282a631d9f3ef04bf1a44b4c9e8bdc8eb278917f038c9b7ef30c8d90ec8dcafe64f276c94d623dc061b668452db8c7df3f7a136435039b48a712bdd5b6ec945aa92cf29799236a2dded1017ef86f7e155a5464b0652d0202020303f28082b83a8d011059131af54610e945d3e95f438a7cbf80eaf1598f146536af02030202020103967e00fc69f5806b6f08105360091bd37c3a9ecfbda8d3137b773cc2d31f468902010201032d9df4b0208bcd6c9719c3b30b24f60012dabf83f3b55919d5a6456dfe22af5a0203020307035485ceb41028b1a5ed2b88e395145344837308b2515820000000000000000000000000000000000000000000000000000000000000000054dbc6981a11fc2b000c635bfa7c47676b25c87d390203020303f1266fd841ff5f3c27b8886275487d980e22c0b71ec6db7640c89b1049a68157070054ff6250d0e86a2465b0c1bf8e36409503d6a269634a152d02c7e14af680000003c8754745358d02c995f88cb07c6a9658e3c26c9b0df8273413b01f55ce43a16f0203031205a50bb9fadfd3aa680628a016a4be02c8e9964aa71f42db945e63cd3ca9340203020302030388055d5c158bb8922d299b7dccc16f3e0997d00a72db069cb8aadf18d6f55d1c070354dbc6981a11fc2b000c635bfa7c47676b25c87d3958209b3efc411c5f69533db363941e091f6f3af8b7e306525413577a56d27e5dbe73410103fcf29668a8ef83e5113c29d62d7fd09b9712da1a77bcd6e493303baae3812da80358243a7f4eb19a404936634ffb321c7f6a5320d02cb17bc6839f97c412b170e9", root_str: "4aad1c5d427ffb13aa6a438c4013cb2cf0d6dcf9484977f631c021337983c5eb" };
pub(crate) const TEST_PAYLOAD_7: TestProtocolInputAndRoot = TestProtocolInputAndRoot { byte_str: "01020302030203020102030203070354dbc6981a11fc2b000c635bfa7c47676b25c87d395820dae2aa361dfd1ca020a396615627d436107c35eff9fe7738a3512819782d706a58205f58e3a2316349923ce3780f8d587db2d72378aed66a8261c916544fa6846ca5030fe25b763f0806d8d0c4207d7d75d6ffc29aa68d453a706b6e48170f973b97180201031f4a9968d4864c15adc3ed2e8e5f16c3c0e06b4ffce615d7625e67a6f83324d80202020302030203038ebb1bd567318fff875f6b3754e347e153752094ab0426cfeac776e7ec9a9366070154ff6250d0e86a2465b0c1bf8e36409503d6a269634108034696e31d313fedc21d6cdb888864e901c34b49d1058639ca8c9924ce3f14d86a0377d0a35ad9d26ef9d4f8f4d95c4329218a5ab2f5495f245f3e844346501a861b0203020203ff2d60ea64b3ddc8a790ad37a37fdf985f6fff41e7eee8ed5aa92c2ab6263a78038718e1addf547b6ca1f97ad53186d20fec6a9a278246fed00954ffd91d6511670203020302030203070354a40d5f56745a118d0906a34e69aec8c0db1cb8fa5820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54282a631d9f3ef04bf1a44b4c9e8bdc8eb278917f038c9b7ef30c8d90ec8dcafe64f276c94d623dc061b668452db8c7df3f7a136435039b48a712bdd5b6ec945aa92cf29799236a2dded1017ef86f7e155a5464b0652d0202020303f28082b83a8d011059131af54610e945d3e95f438a7cbf80eaf1598f146536af02030202020103967e00fc69f5806b6f08105360091bd37c3a9ecfbda8d3137b773cc2d31f468902010201032d9df4b0208bcd6c9719c3b30b24f60012dabf83f3b55919d5a6456dfe22af5a0203020307035485ceb41028b1a5ed2b88e395145344837308b2515820000000000000000000000000000000000000000000000000000000000000000054dbc6981a11fc2b000c635bfa7c47676b25c87d390203020303f1266fd841ff5f3c27b8886275487d980e22c0b71ec6db7640c89b1049a68157070054ff6250d0e86a2465b0c1bf8e36409503d6a269634a152d02c7e14af680000003c8754745358d02c995f88cb07c6a9658e3c26c9b0df8273413b01f55ce43a16f0203031205a50bb9fadfd3aa680628a016a4be02c8e9964aa71f42db945e63cd3ca9340203020302030388055d5c158bb8922d299b7dccc16f3e0997d00a72db069cb8aadf18d6f55d1c070354dbc6981a11fc2b000c635bfa7c47676b25c87d3958209b3efc411c5f69533db363941e091f6f3af8b7e306525413577a56d27e5dbe73410103fcf29668a8ef83e5113c29d62d7fd09b9712da1a77bcd6e493303baae3812da80358243a7f4eb19a404936634ffb321c7f6a5320d02cb17bc6839f97c412b170e9", root_str: "a9ea727d6e65f97e86125a1afdd11208091c81027b31740bdc6cc38f903fee49" };

// TODO - Wrong root_str
pub(crate) const TEST_PAYLOAD_8: TestProtocolInputAndRoot = TestProtocolInputAndRoot {
byte_str: include_str!("large_test_payloads/test_payload_8.txt"),
root_str: "e3183936f83466ac3a7c4a0c58bcc62eee4a0a9edb0cbb8bb2ecc3094940f389",
root_str: "4aad1c5d427ffb13aa6a438c4013cb2cf0d6dcf9484977f631c021337983c5eb",
};

// TODO - Wrong root_str
pub(crate) const TEST_PAYLOAD_9: TestProtocolInputAndRoot = TestProtocolInputAndRoot {
byte_str: include_str!("large_test_payloads/test_payload_9.txt"),
root_str: "355baf018ce42aae0df4605ff6274da1c2cd650bee756412dd12e60667794049",
root_str: "4aad1c5d427ffb13aa6a438c4013cb2cf0d6dcf9484977f631c021337983c5eb",
};

// TODO - Wrong root_str
pub(crate) const TEST_PAYLOAD_10: TestProtocolInputAndRoot = TestProtocolInputAndRoot {
byte_str: include_str!("large_test_payloads/test_payload_10.txt"),
root_str: "006c7f763bab6c91bbd785231a463460e3db3956b02f2c3a0277a37556cc98c2",
root_str: "4aad1c5d427ffb13aa6a438c4013cb2cf0d6dcf9484977f631c021337983c5eb",
};

pub(crate) const TEST_PAYLOAD_11: TestProtocolInputAndRoot = TestProtocolInputAndRoot { byte_str: "01020302030203020102030203070354dbc6981a11fc2b000c635bfa7c47676b25c87d395820dae2aa361dfd1ca020a396615627d436107c35eff9fe7738a3512819782d706a58205f58e3a2316349923ce3780f8d587db2d72378aed66a8261c916544fa6846ca5030fe25b763f0806d8d0c4207d7d75d6ffc29aa68d453a706b6e48170f973b97180201031f4a9968d4864c15adc3ed2e8e5f16c3c0e06b4ffce615d7625e67a6f83324d80202020302030203038ebb1bd567318fff875f6b3754e347e153752094ab0426cfeac776e7ec9a9366070154ff6250d0e86a2465b0c1bf8e36409503d6a269634109034696e31d313fedc21d6cdb888864e901c34b49d1058639ca8c9924ce3f14d86a0377d0a35ad9d26ef9d4f8f4d95c4329218a5ab2f5495f245f3e844346501a861b02030203032828d6f59c9f459eec72c8f7c3ca2a917e6ae3988894349292d3bd2edafcfcae020307045436810012486fc134d0679c07f85fe5ba5a087d8c420b9b034c43414146a58f344fc6d9e3967a4ca5bfb730f34d307cf52da1461aa5d1788d03ad4fbb1d9fb1ec2583874550a15c51a02fd06b31baad4edb9639554bd292699e020302030203036b2039084ec9a330a81c830bf10f152b56f3c5f1ce348917c83a61e230eb850702020203036ee1753e8040533b3449030940a41808ed85eb1c748a8a02e45c7419abfb8fd907015485ceb41028b1a5ed2b88e395145344837308b25141010202020303f28082b83a8d011059131af54610e945d3e95f438a7cbf80eaf1598f146536af020303237e44ef2f2c8075464a8aabaa0cb261d193d35130bd16e3ee034603b0872af002010201032d9df4b0208bcd6c9719c3b30b24f60012dabf83f3b55919d5a6456dfe22af5a02030203020202010203070054761d53b47334bee6612c0bd1467fb881435375b24563bea13c0003bfcbe8a808ca48c9bae028fb29e84b8abd48d7bbad74af727177d3eb8543b76b0203020303f1266fd841ff5f3c27b8886275487d980e22c0b71ec6db7640c89b1049a68157070054ff6250d0e86a2465b0c1bf8e36409503d6a269634a152d02c63909635cef8003c8754745358d02c995f88cb07c6a9658e3c26c9b0df8273413b01f55ce43a16f020302030203032d6be6ae60ad356076d958b6f0fff54ff2b9505b28f894f0ab07cc50c22a0a38070354a40d5f56745a118d0906a34e69aec8c0db1cb8fa5820b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035485ceb41028b1a5ed2b88e395145344837308b25103b9fb55dd268ecf19e428082767b8c791e442468983b12e10f77408ad3b65687f0203020302030388055d5c158bb8922d299b7dccc16f3e0997d00a72db069cb8aadf18d6f55d1c070354dbc6981a11fc2b000c635bfa7c47676b25c87d3958209b3efc411c5f69533db363941e091f6f3af8b7e306525413577a56d27e5dbe73410103fcf29668a8ef83e5113c29d62d7fd09b9712da1a77bcd6e493303baae3812da80358243a7f4eb19a404936634ffb321c7f6a5320d02cb17bc6839f97c412b170e9", root_str: "407fdb0c2f6538ebd624eae9cdaeb5eaef439eee9b9bd1392f97548a5257bdf4" };

pub(crate) const TEST_PAYLOAD_12: TestProtocolInputAndRoot = TestProtocolInputAndRoot { byte_str: "01020302030203020102030203070354dbc6981a11fc2b000c635bfa7c47676b25c87d395820dae2aa361dfd1ca020a396615627d436107c35eff9fe7738a3512819782d706a58205f58e3a2316349923ce3780f8d587db2d72378aed66a8261c916544fa6846ca5030fe25b763f0806d8d0c4207d7d75d6ffc29aa68d453a706b6e48170f973b97180201031f4a9968d4864c15adc3ed2e8e5f16c3c0e06b4ffce615d7625e67a6f83324d80202020302030203038ebb1bd567318fff875f6b3754e347e153752094ab0426cfeac776e7ec9a9366070154ff6250d0e86a2465b0c1bf8e36409503d6a26963410a02020203070154282a631d9f3ef04bf1a44b4c9e8bdc8eb278917f410103882de6be02fcb48c7ffd30c088d4d2b807b1143a9808e2ad33cc95b8762eb6a70377d0a35ad9d26ef9d4f8f4d95c4329218a5ab2f5495f245f3e844346501a861b02030357406ddb685037d5396e303c8a2df992502d6f83178d37ca8034e8b6614aa7c302030203039641b456dd9f9ca66e61252f9b33317325b91388d09f02936501cecc5bb467e8020203e18a6a605563197aebf4c5e36eed59de41bd99fba067c32d481dff5ab08a9eb2036aa3f4c85ce515bce80d52c16aaa4d9618c9b04515c57fda60acb760a86d8d160203020303b528a10857ba78165dfd4e0313988a841cfd9963cfdb58a6849c496317217e350202020303f28082b83a8d011059131af54610e945d3e95f438a7cbf80eaf1598f146536af020303c2d1dc61ffb7c8a7c627a7a20e81e2f199d50d817e8c0235b90fdc7caf4cba0e02010201032d9df4b0208bcd6c9719c3b30b24f60012dabf83f3b55919d5a6456dfe22af5a02030203020202010203070054761d53b47334bee6612c0bd1467fb881435375b245c77d42780003bfcbe8a808ca48c9bae028fb29e84b8abd48d7bbad74af727177d3eb8543b76b0203020303e713c2f5338e75eb386263cf44ee116326790e2869196ae623a1befaa4907c9b070054ff6250d0e86a2465b0c1bf8e36409503d6a269634a152d02c490c7d039df0003c8754745358d02c995f88cb07c6a9658e3c26c9b0df8273413b01f55ce43a16f0203031205a50bb9fadfd3aa680628a016a4be02c8e9964aa71f42db945e63cd3ca9340203020302030388055d5c158bb8922d299b7dccc16f3e0997d00a72db069cb8aadf18d6f55d1c070354dbc6981a11fc2b000c635bfa7c47676b25c87d3958209b3efc411c5f69533db363941e091f6f3af8b7e306525413577a56d27e5dbe73410103fcf29668a8ef83e5113c29d62d7fd09b9712da1a77bcd6e493303baae3812da8070154528e26b25a34a4a5d0dbda1d57d318153d2ed5824101", root_str: "4aad1c5d427ffb13aa6a438c4013cb2cf0d6dcf9484977f631c021337983c5eb" };

type ProcessMptCompactPrestateFn = ProcessedCompactPrestateFn<StateTrieExtractionOutput>;

type ProcessSmtCompactPrestateFn = ProcessedCompactPrestateFn<SmtStateTrieExtractionOutput>;
Expand Down

0 comments on commit 7cebfbf

Please sign in to comment.