httprequest_ut.cc 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. #include <iostream>
  2. #include <stdio.h>
  3. #include "gtest/gtest.h"
  4. #include "alibabacloud/core/HttpRequest.h"
  5. using namespace std;
  6. using namespace AlibabaCloud;
  7. TEST(HttpRequest, basic) {
  8. const string src = "abc://username:password@example.com:123/path/data?key=value&key2=value2#fragid1";
  9. Url url;
  10. url.setScheme("abc");
  11. url.setUserName("username");
  12. url.setPassword("password");
  13. url.setHost("example.com");
  14. url.setPath("/path/data");
  15. url.setPort(123);
  16. url.setQuery("key=value&key2=value2");
  17. url.setFragment("fragid1");
  18. HttpRequest req(url, HttpRequest::Method::Post);
  19. EXPECT_TRUE(req.method() == HttpRequest::Method::Post);
  20. req.setMethod(HttpRequest::Method::Get);
  21. EXPECT_TRUE(req.method() == HttpRequest::Method::Get);
  22. req.setUrl(url);
  23. Url rUrl = req.url();
  24. EXPECT_TRUE(rUrl.toString() == src);
  25. EXPECT_TRUE(req.connectTimeout() == 5000);
  26. EXPECT_TRUE(req.readTimeout() == 10000);
  27. req.setConnectTimeout(12345);
  28. req.setReadTimeout(3335);
  29. EXPECT_TRUE(req.connectTimeout() == 12345);
  30. EXPECT_TRUE(req.readTimeout() == 3335);
  31. }