diff --git a/src/test/miniscript_tests.cpp b/src/test/miniscript_tests.cpp index 757f89b63bc..2bb96144b0a 100644 --- a/src/test/miniscript_tests.cpp +++ b/src/test/miniscript_tests.cpp @@ -728,18 +728,18 @@ BOOST_AUTO_TEST_CASE(fixed_tests) } // Confirm that ~Node(), Node::Clone() and operator=(Node&&) are stack-safe. -BOOST_AUTO_TEST_CASE(node_deep_destruct) +BOOST_AUTO_TEST_CASE(node_stress_stack) { using miniscript::internal::NoDupCheck; using miniscript::Fragment; using NodeU32 = miniscript::Node; - constexpr auto ctx{miniscript::MiniscriptContext::P2WSH}; - + constexpr auto ctx{miniscript::MiniscriptContext::TAPSCRIPT}; NodeU32 root{NoDupCheck{}, ctx, Fragment::JUST_1}; for (uint32_t i{0}; i < 200'000; ++i) { - root = NodeU32{NoDupCheck{}, ctx, Fragment::WRAP_S, Vector(std::move(root))}; + root = NodeU32{NoDupCheck{}, ctx, Fragment::WRAP_N, Vector(std::move(root))}; } + BOOST_CHECK(root.IsValid()); BOOST_CHECK_EQUAL(root.ScriptSize(), 200'001); auto clone{root.Clone()};