From d895f82ef82c6bdbc032f0aba3c1ac26ef5493c8 Mon Sep 17 00:00:00 2001 From: Ahson Khan Date: Thu, 16 May 2024 10:51:50 -0700 Subject: [PATCH] Add basic tests for GetMajor/Minor HTTP versions in the response. (#5613) * Add basic tests for GetMajor/Minor HTTP versions in the response. * Make the tests parameterized. * Address PR feedback - add more test cases. --- sdk/core/azure-core/test/ut/http_test.cpp | 29 +++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/sdk/core/azure-core/test/ut/http_test.cpp b/sdk/core/azure-core/test/ut/http_test.cpp index 25d2c64d9..d3abf52df 100644 --- a/sdk/core/azure-core/test/ut/http_test.cpp +++ b/sdk/core/azure-core/test/ut/http_test.cpp @@ -121,6 +121,35 @@ namespace Azure { namespace Core { namespace Test { (std::pair("valid3", "header3"))); } + class ParameterizedTestForHttpVersions + : public ::testing::TestWithParam> { + protected: + std::pair httpVersion; + }; + + INSTANTIATE_TEST_SUITE_P( + TestHttp, + ParameterizedTestForHttpVersions, + ::testing::Values( + std::make_pair(0, 9), + std::make_pair(1, 0), + std::make_pair(1, 1), + std::make_pair(1, 5), + std::make_pair(2, 0), + std::make_pair(INT32_MAX, 0), + std::make_pair(INT32_MAX, INT32_MAX))); + + TEST_P(ParameterizedTestForHttpVersions, ValidHttpVersionsInResponse) + { + std::int32_t majorVersion = GetParam().first; + std::int32_t minorVersion = GetParam().second; + + Http::RawResponse response(majorVersion, minorVersion, Http::HttpStatusCode::Ok, "Test"); + + EXPECT_EQ(response.GetMajorVersion(), majorVersion); + EXPECT_EQ(response.GetMinorVersion(), minorVersion); + } + // HTTP Range TEST(TestHttp, HttpRange) {