in e99dc3460c22016ca16f656f63594102b7cf655a: nit: could go further and do a Url{Encode,Decode} round-trip test, something like e.g.
diff --git a/src/test/common_url_tests.cpp b/src/test/common_url_tests.cpp
index 97d7598c0c..33e80c82dd 100644
--- a/src/test/common_url_tests.cpp
+++ b/src/test/common_url_tests.cpp
@@ -74,7 +74,7 @@ BOOST_AUTO_TEST_CASE(decode_internal_nulls_test) {
}
BOOST_AUTO_TEST_CASE(url_encode) {
- BOOST_CHECK_EQUAL(UrlEncode(std::string_view{
+ auto to_encode = std::string_view{
"\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f"
"\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f"
"\x20\x21\x22\x23\x24\x25\x26\x27\x28\x29\x2a\x2b\x2c\x2d\x2e\x2f"
@@ -91,7 +91,8 @@ BOOST_AUTO_TEST_CASE(url_encode) {
"\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf"
"\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef"
"\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff",
- 256}),
+ 256};
+ auto expected_encoded =
"%00%01%02%03%04%05%06%07%08%09%0A%0B%0C%0D%0E%0F"
"%10%11%12%13%14%15%16%17%18%19%1A%1B%1C%1D%1E%1F"
"%20%21%22%23%24%25%26%27%28%29%2A%2B%2C-.%2F"
@@ -107,7 +108,9 @@ BOOST_AUTO_TEST_CASE(url_encode) {
"%C0%C1%C2%C3%C4%C5%C6%C7%C8%C9%CA%CB%CC%CD%CE%CF"
"%D0%D1%D2%D3%D4%D5%D6%D7%D8%D9%DA%DB%DC%DD%DE%DF"
"%E0%E1%E2%E3%E4%E5%E6%E7%E8%E9%EA%EB%EC%ED%EE%EF"
- "%F0%F1%F2%F3%F4%F5%F6%F7%F8%F9%FA%FB%FC%FD%FE%FF");
+ "%F0%F1%F2%F3%F4%F5%F6%F7%F8%F9%FA%FB%FC%FD%FE%FF";
+ BOOST_CHECK_EQUAL(UrlEncode(to_encode), expected_encoded);
+ BOOST_CHECK_EQUAL(UrlDecode(expected_encoded), to_encode);
}
BOOST_AUTO_TEST_SUITE_END()
(But something more generic applying to all existing tests could be done in a separate PR).