From ef4c65b741724d724452a3a0efe8dff0d450514a Mon Sep 17 00:00:00 2001 From: Ed Tanous Date: Mon, 24 Apr 2023 15:28:50 -0700 Subject: Boost::urls::format Boost 1.82 dropped a lovely new toy, boost::urls::format, which is a lot like our urlFromPieces method, but better in that it makes the resulting uris more readable, and allows doing things like fragments in a single line instead of multiple. We should prefer it in some cases. Tested: Redfish service validator passes. Spot checks of URLs work as expected. Unit tests pass. Signed-off-by: Ed Tanous Change-Id: Ia7b38f0a95771c862507e7d5b4aa68aa1c98403c --- test/http/utility_test.cpp | 35 +---------------------------------- 1 file changed, 1 insertion(+), 34 deletions(-) (limited to 'test/http') diff --git a/test/http/utility_test.cpp b/test/http/utility_test.cpp index 67264551a5..6506fcfb28 100644 --- a/test/http/utility_test.cpp +++ b/test/http/utility_test.cpp @@ -81,39 +81,6 @@ TEST(Utility, Base64EncodeDecodeString) EXPECT_EQ(data, decoded); } -TEST(Utility, UrlFromPieces) -{ - boost::urls::url url = urlFromPieces("redfish", "v1", "foo"); - EXPECT_EQ(url.buffer(), "/redfish/v1/foo"); - - url = urlFromPieces("/", "badString"); - EXPECT_EQ(url.buffer(), "/%2F/badString"); - - url = urlFromPieces("bad?tring"); - EXPECT_EQ(url.buffer(), "/bad%3Ftring"); - - url = urlFromPieces("/", "bad&tring"); - EXPECT_EQ(url.buffer(), "/%2F/bad&tring"); - - EXPECT_EQ(std::string_view(url.data(), url.size()), "/%2F/bad&tring"); - - url = urlFromPieces("my-user"); - EXPECT_EQ(std::string_view(url.data(), url.size()), "/my-user"); - - url = urlFromPieces("my_user"); - EXPECT_EQ(std::string_view(url.data(), url.size()), "/my_user"); - - url = urlFromPieces("my_93user"); - EXPECT_EQ(std::string_view(url.data(), url.size()), "/my_93user"); - - // The following characters will be converted to ASCII number - // `[{]}\|"<>/?#%^ - url = - urlFromPieces("~1234567890-_=+qwertyuiopasdfghjklzxcvbnm;:',.!@$&*()"); - EXPECT_EQ(std::string_view(url.data(), url.size()), - "/~1234567890-_=+qwertyuiopasdfghjklzxcvbnm;:',.!@$&*()"); -} - TEST(Utility, readUrlSegments) { boost::urls::result parsed = @@ -234,7 +201,7 @@ TEST(URL, JsonEncoding) TEST(AppendUrlFromPieces, PiecesAreAppendedViaDelimiters) { - boost::urls::url url = urlFromPieces("redfish", "v1", "foo"); + boost::urls::url url("/redfish/v1/foo"); EXPECT_EQ(std::string_view(url.data(), url.size()), "/redfish/v1/foo"); appendUrlPieces(url, "bar"); -- cgit v1.2.3