diff --git a/src/test/util/random.cpp b/src/test/util/random.cpp index 8757ab36fbcef..770848f708b3c 100644 --- a/src/test/util/random.cpp +++ b/src/test/util/random.cpp @@ -39,6 +39,9 @@ void SeedRandomStateForTest(SeedRand seedtype) }(); g_seeded_g_prng_zero = seedtype == SeedRand::ZEROS; + if constexpr (G_FUZZING) { + Assert(g_seeded_g_prng_zero); // Only SeedRandomStateForTest(SeedRand::ZEROS) is allowed in fuzz tests + } const uint256& seed{seedtype == SeedRand::FIXED_SEED ? ctx_seed : uint256::ZERO}; LogInfo("Setting random seed for current tests to %s=%s\n", RANDOM_CTX_SEED, seed.GetHex()); MakeRandDeterministicDANGEROUS(seed); diff --git a/src/test/util/setup_common.cpp b/src/test/util/setup_common.cpp index 12feba09a54e1..6449758b39620 100644 --- a/src/test/util/setup_common.cpp +++ b/src/test/util/setup_common.cpp @@ -108,6 +108,9 @@ static void ExitFailure(std::string_view str_err) BasicTestingSetup::BasicTestingSetup(const ChainType chainType, TestOpts opts) : m_args{} { + if constexpr (!G_FUZZING) { + SeedRandomForTest(SeedRand::FIXED_SEED); + } m_node.shutdown_signal = &m_interrupt; m_node.shutdown_request = [this]{ return m_interrupt(); }; m_node.args = &gArgs; @@ -139,8 +142,6 @@ BasicTestingSetup::BasicTestingSetup(const ChainType chainType, TestOpts opts) } } - SeedRandomForTest(SeedRand::FIXED_SEED); - const std::string test_name{G_TEST_GET_FULL_NAME ? G_TEST_GET_FULL_NAME() : ""}; if (!m_node.args->IsArgSet("-testdatadir")) { // To avoid colliding with a leftover prior datadir, and to allow