diff --git a/src/test/fuzz/base_encode_decode.cpp b/src/test/fuzz/base_encode_decode.cpp index 06b249fb8d3..69caac58100 100644 --- a/src/test/fuzz/base_encode_decode.cpp +++ b/src/test/fuzz/base_encode_decode.cpp @@ -6,6 +6,7 @@ #include #include +#include #include #include #include @@ -19,42 +20,40 @@ using util::TrimStringView; FUZZ_TARGET(base58_encode_decode) { - FuzzedDataProvider provider(buffer.data(), buffer.size()); - const std::string random_string{provider.ConsumeRandomLengthString(1000)}; - const int max_ret_len{provider.ConsumeIntegralInRange(-1, 1000)}; + FuzzedDataProvider provider{buffer.data(), buffer.size()}; + const auto random_string{provider.ConsumeRandomLengthString(100)}; + const int max_ret_len{provider.ConsumeIntegralInRange(-1, 100)}; // Decode/Encode roundtrip - std::vector decoded; - if (DecodeBase58(random_string, decoded, max_ret_len)) { + if (std::vector decoded; DecodeBase58(random_string, decoded, max_ret_len)) { const auto encoded_string{EncodeBase58(decoded)}; assert(encoded_string == TrimStringView(random_string)); - assert(encoded_string.empty() || !DecodeBase58(encoded_string, decoded, provider.ConsumeIntegralInRange(0, decoded.size() - 1))); + assert(decoded.empty() || !DecodeBase58(encoded_string, decoded, provider.ConsumeIntegralInRange(0, decoded.size() - 1))); } // Encode/Decode roundtrip - const auto encoded{EncodeBase58(buffer)}; + const auto encoded{EncodeBase58(MakeUCharSpan(random_string))}; std::vector roundtrip_decoded; - assert(DecodeBase58(encoded, roundtrip_decoded, buffer.size()) - && std::ranges::equal(roundtrip_decoded, buffer)); + assert(DecodeBase58(encoded, roundtrip_decoded, random_string.size()) + && std::ranges::equal(roundtrip_decoded, MakeUCharSpan(random_string))); } FUZZ_TARGET(base58check_encode_decode) { - FuzzedDataProvider provider(buffer.data(), buffer.size()); - const std::string random_string{provider.ConsumeRandomLengthString(1000)}; - const int max_ret_len{provider.ConsumeIntegralInRange(-1, 1000)}; + FuzzedDataProvider provider{buffer.data(), buffer.size()}; + const auto random_string{provider.ConsumeRandomLengthString(100)}; + const int max_ret_len{provider.ConsumeIntegralInRange(-1, 100)}; // Decode/Encode roundtrip - std::vector decoded; - if (DecodeBase58Check(random_string, decoded, max_ret_len)) { + if (std::vector decoded; DecodeBase58Check(random_string, decoded, max_ret_len)) { const auto encoded_string{EncodeBase58Check(decoded)}; assert(encoded_string == TrimStringView(random_string)); - assert(encoded_string.empty() || !DecodeBase58Check(encoded_string, decoded, provider.ConsumeIntegralInRange(0, decoded.size() - 1))); + assert(decoded.empty() || !DecodeBase58Check(encoded_string, decoded, provider.ConsumeIntegralInRange(0, decoded.size() - 1))); } // Encode/Decode roundtrip - const auto encoded{EncodeBase58Check(buffer)}; + const auto encoded{EncodeBase58Check(MakeUCharSpan(random_string))}; std::vector roundtrip_decoded; - assert(DecodeBase58Check(encoded, roundtrip_decoded, buffer.size()) - && std::ranges::equal(roundtrip_decoded, buffer)); + assert(DecodeBase58Check(encoded, roundtrip_decoded, random_string.size()) + && std::ranges::equal(roundtrip_decoded, MakeUCharSpan(random_string))); } FUZZ_TARGET(base32_encode_decode)