@@ -54,38 +54,6 @@ constexpr auto root88 = system::sha256::double_hash(root84, root84);
5454
5555constexpr auto root08 = system::sha256::double_hash(root07, root88);
5656
57- // depth 1 subroots are just the block hashes.
58-
59- // depth 1 subroots.
60- constexpr auto sub01 = system::base16_hash(" abdc2227d02d114b77be15085c1257709252a7a103f9ac0ab3c85d67e12bc0b8" );
61- constexpr auto sub23 = system::base16_hash(" f2a2a2907abb326726a2d6500fe494f63772a941b414236c302e920bc1aa9caf" );
62- constexpr auto sub45 = system::base16_hash(" f9f17a3c6d02b0920eccb11156df370bf4117fae2233dfee40817586ba981ca5" );
63- constexpr auto sub67 = system::base16_hash(" 96cbbc84783888e4cc971ae8acf86dd3c1a419370336bb3c634c97695a8c5ac9" );
64- constexpr auto sub82 = system::base16_hash(" 67552d97dfd80082ecd5fe3b233e3a4aa9cb9a07a6040bb43b507cbec44088f2" );
65- static_assert (sub01 == root01);
66- static_assert (sub23 == root23);
67- static_assert (sub45 == root45);
68- static_assert (sub67 == root67);
69- static_assert (sub82 == root82);
70-
71- // depth 2 subroots.
72- constexpr auto sub03 = system::base16_hash(" 965ac94082cebbcffe458075651e9cc33ce703ab0115c72d9e8b1a9906b2b636" );
73- constexpr auto sub47 = system::base16_hash(" 0e85585b6afb71116ec439b72a25edb8003ef34bc42fb2c88a05249da335774d" );
74- constexpr auto sub84 = system::base16_hash(" c752fe3464335530a1109a7cfc6193f9aafb6d0dd913a4a51b92bc6cc4a90c33" );
75- static_assert (sub03 == root03);
76- static_assert (sub47 == root47);
77- static_assert (sub84 == root84);
78-
79- // depth 3 subroots.
80- constexpr auto sub07 = system::base16_hash(" c809e7a698a4b4c474ff6f5f05e88af6d7cb80ddbbe302660dfe6bd1969224a2" );
81- constexpr auto sub88 = system::base16_hash(" 89e5daa6950b895190716dd26054432b564ccdc2868188ba1da76de8e1dc7591" );
82- static_assert (sub07 == root07);
83- static_assert (sub88 == root88);
84-
85- // depth 4 root (is not a subroot)
86- constexpr auto span08 = system::base16_hash(" e347b1c43fd9b5415bf0d92708db8284b78daf4d0e24f9c3405f45feb85e25db" );
87- static_assert (span08 == root08);
88-
8957class merkle_accessor
9058 : public test::query_accessor
9159{
@@ -566,17 +534,17 @@ BOOST_AUTO_TEST_CASE(query_merkle__get_merkle_root_and_proof__electrumx_example_
566534 BOOST_CHECK_EQUAL (roots[7 ], test::block7_hash);
567535 BOOST_CHECK_EQUAL (roots[8 ], test::block8_hash);
568536
569- BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), span08 );
537+ BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), root08 );
570538
571539 hashes proof{};
572540 hash_digest root{};
573541 BOOST_CHECK (!query.get_merkle_root_and_proof (root, proof, 5 , 8 ));
574542 BOOST_CHECK_EQUAL (root, root08);
575543 BOOST_CHECK_EQUAL (proof.size (), 4u );
576544 BOOST_CHECK_EQUAL (proof[0 ], test::block4_hash);
577- BOOST_CHECK_EQUAL (proof[1 ], sub67 );
578- BOOST_CHECK_EQUAL (proof[2 ], sub03 );
579- BOOST_CHECK_EQUAL (proof[3 ], sub88 );
545+ BOOST_CHECK_EQUAL (proof[1 ], root67 );
546+ BOOST_CHECK_EQUAL (proof[2 ], root03 );
547+ BOOST_CHECK_EQUAL (proof[3 ], root88 );
580548}
581549
582550BOOST_AUTO_TEST_CASE (query_merkle__get_merkle_root_and_proof__electrumx_example_depth_1__success)
@@ -592,23 +560,23 @@ BOOST_AUTO_TEST_CASE(query_merkle__get_merkle_root_and_proof__electrumx_example_
592560 hashes roots{};
593561 BOOST_CHECK_EQUAL (query.get_merkle_subroots (roots, 8 ), error::success);
594562 BOOST_CHECK_EQUAL (roots.size (), 5u );
595- BOOST_CHECK_EQUAL (roots[0 ], sub01 );
596- BOOST_CHECK_EQUAL (roots[1 ], sub23 );
597- BOOST_CHECK_EQUAL (roots[2 ], sub45 );
598- BOOST_CHECK_EQUAL (roots[3 ], sub67 );
599- BOOST_CHECK_EQUAL (roots[4 ], sub82 );
563+ BOOST_CHECK_EQUAL (roots[0 ], root01 );
564+ BOOST_CHECK_EQUAL (roots[1 ], root23 );
565+ BOOST_CHECK_EQUAL (roots[2 ], root45 );
566+ BOOST_CHECK_EQUAL (roots[3 ], root67 );
567+ BOOST_CHECK_EQUAL (roots[4 ], root82 );
600568
601- BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), span08 );
569+ BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), root08 );
602570
603571 hashes proof{};
604572 hash_digest root{};
605573 BOOST_CHECK (!query.get_merkle_root_and_proof (root, proof, 5 , 8 ));
606- BOOST_CHECK_EQUAL (root, span08 );
574+ BOOST_CHECK_EQUAL (root, root08 );
607575 BOOST_CHECK_EQUAL (proof.size (), 4u );
608576 BOOST_CHECK_EQUAL (proof[0 ], test::block4_hash);
609- BOOST_CHECK_EQUAL (proof[1 ], sub67 );
610- BOOST_CHECK_EQUAL (proof[2 ], sub03 );
611- BOOST_CHECK_EQUAL (proof[3 ], sub88 );
577+ BOOST_CHECK_EQUAL (proof[1 ], root67 );
578+ BOOST_CHECK_EQUAL (proof[2 ], root03 );
579+ BOOST_CHECK_EQUAL (proof[3 ], root88 );
612580}
613581
614582BOOST_AUTO_TEST_CASE (query_merkle__get_merkle_root_and_proof__electrumx_example_depth_2__success)
@@ -624,21 +592,21 @@ BOOST_AUTO_TEST_CASE(query_merkle__get_merkle_root_and_proof__electrumx_example_
624592 hashes roots{};
625593 BOOST_CHECK_EQUAL (query.get_merkle_subroots (roots, 8 ), error::success);
626594 BOOST_CHECK_EQUAL (roots.size (), 3u );
627- BOOST_CHECK_EQUAL (roots[0 ], sub03 );
628- BOOST_CHECK_EQUAL (roots[1 ], sub47 );
629- BOOST_CHECK_EQUAL (roots[2 ], sub84 );
595+ BOOST_CHECK_EQUAL (roots[0 ], root03 );
596+ BOOST_CHECK_EQUAL (roots[1 ], root47 );
597+ BOOST_CHECK_EQUAL (roots[2 ], root84 );
630598
631- BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), span08 );
599+ BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), root08 );
632600
633601 hashes proof{};
634602 hash_digest root{};
635603 BOOST_CHECK (!query.get_merkle_root_and_proof (root, proof, 5 , 8 ));
636- BOOST_CHECK_EQUAL (root, span08 );
604+ BOOST_CHECK_EQUAL (root, root08 );
637605 BOOST_CHECK_EQUAL (proof.size (), 4u );
638606 BOOST_CHECK_EQUAL (proof[0 ], test::block4_hash);
639- BOOST_CHECK_EQUAL (proof[1 ], sub67 );
640- BOOST_CHECK_EQUAL (proof[2 ], sub03 );
641- BOOST_CHECK_EQUAL (proof[3 ], sub88 );
607+ BOOST_CHECK_EQUAL (proof[1 ], root67 );
608+ BOOST_CHECK_EQUAL (proof[2 ], root03 );
609+ BOOST_CHECK_EQUAL (proof[3 ], root88 );
642610}
643611
644612BOOST_AUTO_TEST_CASE (query_merkle__get_merkle_root_and_proof__electrumx_example_depth_3__success)
@@ -654,20 +622,20 @@ BOOST_AUTO_TEST_CASE(query_merkle__get_merkle_root_and_proof__electrumx_example_
654622 hashes roots{};
655623 BOOST_CHECK_EQUAL (query.get_merkle_subroots (roots, 8 ), error::success);
656624 BOOST_CHECK_EQUAL (roots.size (), 2u );
657- BOOST_CHECK_EQUAL (roots[0 ], sub07 );
658- BOOST_CHECK_EQUAL (roots[1 ], sub88 );
625+ BOOST_CHECK_EQUAL (roots[0 ], root07 );
626+ BOOST_CHECK_EQUAL (roots[1 ], root88 );
659627
660- BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), span08 );
628+ BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), root08 );
661629
662630 hashes proof{};
663631 hash_digest root{};
664632 BOOST_CHECK (!query.get_merkle_root_and_proof (root, proof, 5 , 8 ));
665- BOOST_CHECK_EQUAL (root, span08 );
633+ BOOST_CHECK_EQUAL (root, root08 );
666634 BOOST_CHECK_EQUAL (proof.size (), 4u );
667635 BOOST_CHECK_EQUAL (proof[0 ], test::block4_hash);
668- BOOST_CHECK_EQUAL (proof[1 ], sub67 );
669- BOOST_CHECK_EQUAL (proof[2 ], sub03 );
670- BOOST_CHECK_EQUAL (proof[3 ], sub88 );
636+ BOOST_CHECK_EQUAL (proof[1 ], root67 );
637+ BOOST_CHECK_EQUAL (proof[2 ], root03 );
638+ BOOST_CHECK_EQUAL (proof[3 ], root88 );
671639}
672640
673641BOOST_AUTO_TEST_CASE (query_merkle__get_merkle_root_and_proof__electrumx_example_depth_4__success)
@@ -683,19 +651,19 @@ BOOST_AUTO_TEST_CASE(query_merkle__get_merkle_root_and_proof__electrumx_example_
683651 hashes roots{};
684652 BOOST_CHECK_EQUAL (query.get_merkle_subroots (roots, 8 ), error::success);
685653 BOOST_CHECK_EQUAL (roots.size (), 1u );
686- BOOST_CHECK_EQUAL (roots[0 ], span08 );
654+ BOOST_CHECK_EQUAL (roots[0 ], root08 );
687655
688- BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), span08 );
656+ BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), root08 );
689657
690658 hashes proof{};
691659 hash_digest root{};
692660 BOOST_CHECK (!query.get_merkle_root_and_proof (root, proof, 5 , 8 ));
693- BOOST_CHECK_EQUAL (root, span08 );
661+ BOOST_CHECK_EQUAL (root, root08 );
694662 BOOST_CHECK_EQUAL (proof.size (), 4u ); // <<<<< FAIL (proof.size() == 5)
695663 BOOST_CHECK_EQUAL (proof[0 ], test::block4_hash);
696- BOOST_CHECK_EQUAL (proof[1 ], sub67 );
697- BOOST_CHECK_EQUAL (proof[2 ], sub03 );
698- BOOST_CHECK_EQUAL (proof[3 ], sub88 );
664+ BOOST_CHECK_EQUAL (proof[1 ], root67 );
665+ BOOST_CHECK_EQUAL (proof[2 ], root03 );
666+ BOOST_CHECK_EQUAL (proof[3 ], root88 );
699667}
700668
701669BOOST_AUTO_TEST_CASE (query_merkle__get_merkle_root_and_proof__electrumx_example_depth_11__success)
@@ -711,19 +679,19 @@ BOOST_AUTO_TEST_CASE(query_merkle__get_merkle_root_and_proof__electrumx_example_
711679 hashes roots{};
712680 BOOST_CHECK_EQUAL (query.get_merkle_subroots (roots, 8 ), error::success);
713681 BOOST_CHECK_EQUAL (roots.size (), 1u );
714- BOOST_CHECK_EQUAL (roots[0 ], span08 );
682+ BOOST_CHECK_EQUAL (roots[0 ], root08 );
715683
716- BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), span08 );
684+ BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), root08 );
717685
718686 hashes proof{};
719687 hash_digest root{};
720688 BOOST_CHECK (!query.get_merkle_root_and_proof (root, proof, 5 , 8 ));
721- BOOST_CHECK_EQUAL (root, span08 );
689+ BOOST_CHECK_EQUAL (root, root08 );
722690 BOOST_CHECK_EQUAL (proof.size (), 4u ); // <<<<< FAIL (proof.size() == 11)
723691 BOOST_CHECK_EQUAL (proof[0 ], test::block4_hash);
724- BOOST_CHECK_EQUAL (proof[1 ], sub67 );
725- BOOST_CHECK_EQUAL (proof[2 ], sub03 );
726- BOOST_CHECK_EQUAL (proof[3 ], sub88 );
692+ BOOST_CHECK_EQUAL (proof[1 ], root67 );
693+ BOOST_CHECK_EQUAL (proof[2 ], root03 );
694+ BOOST_CHECK_EQUAL (proof[3 ], root88 );
727695}
728696
729697// This tests a potentially sparse path (avoids compression).
@@ -750,12 +718,12 @@ BOOST_AUTO_TEST_CASE(query_merkle__get_merkle_root_and_proof__target_8_depth_0__
750718 BOOST_CHECK_EQUAL (roots[7 ], test::block7_hash);
751719 BOOST_CHECK_EQUAL (roots[8 ], test::block8_hash);
752720
753- BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), span08 );
721+ BOOST_CHECK_EQUAL (query.get_merkle_root (8 ), root08 );
754722
755723 hashes proof{};
756724 hash_digest root{};
757725 BOOST_CHECK (!query.get_merkle_root_and_proof (root, proof, 8 , 8 ));
758- BOOST_CHECK_EQUAL (root, span08 );
726+ BOOST_CHECK_EQUAL (root, root08 );
759727 BOOST_CHECK_EQUAL (proof.size (), 4u );
760728 BOOST_CHECK_EQUAL (proof[0 ], test::block8_hash);
761729 BOOST_CHECK_EQUAL (proof[1 ], root82);
0 commit comments