From 352be1dd14a07eaf43767eeab5a95cb086049766 Mon Sep 17 00:00:00 2001 From: zhangzifa Date: Sat, 12 Jan 2019 23:19:37 +0800 Subject: [PATCH] add more unit test for location and std --- test/core/CMakeLists.txt | 11 +++- ...tion_model_describeendpoints_request_ut.cc | 20 +++++++ ...ation_model_describeendpoints_result_ut.cc | 58 +++++++++++++++++++ test/core/sts_model_assumerole_request_ut.cc | 22 +++++++ test/core/sts_model_assumerole_result_ut.cc | 41 +++++++++++++ .../sts_model_getcalleridentity_request_ut.cc | 12 ++++ .../sts_model_getcalleridentity_result_ut.cc | 29 ++++++++++ 7 files changed, 192 insertions(+), 1 deletion(-) create mode 100644 test/core/location_model_describeendpoints_request_ut.cc create mode 100644 test/core/location_model_describeendpoints_result_ut.cc create mode 100644 test/core/sts_model_assumerole_request_ut.cc create mode 100644 test/core/sts_model_assumerole_result_ut.cc create mode 100644 test/core/sts_model_getcalleridentity_request_ut.cc create mode 100644 test/core/sts_model_getcalleridentity_result_ut.cc diff --git a/test/core/CMakeLists.txt b/test/core/CMakeLists.txt index ae743af39..15a46777a 100644 --- a/test/core/CMakeLists.txt +++ b/test/core/CMakeLists.txt @@ -60,7 +60,16 @@ add_executable(core_ut servicerequest_ut.cc simplecredentialsprovider_ut.cc url_ut.cc - utils_ut.cc) + utils_ut.cc + + location_model_describeendpoints_request_ut.cc + location_model_describeendpoints_result_ut.cc + + sts_model_assumerole_request_ut.cc + sts_model_assumerole_result_ut.cc + sts_model_getcalleridentity_request_ut.cc + sts_model_getcalleridentity_result_ut.cc + ) set_target_properties(core_ut PROPERTIES diff --git a/test/core/location_model_describeendpoints_request_ut.cc b/test/core/location_model_describeendpoints_request_ut.cc new file mode 100644 index 000000000..fe77dcfea --- /dev/null +++ b/test/core/location_model_describeendpoints_request_ut.cc @@ -0,0 +1,20 @@ +#include +#include +#include "gtest/gtest.h" +#include "alibabacloud/core/location/model/DescribeEndpointsRequest.h" + +using namespace std; +using namespace AlibabaCloud; + +TEST(DescribeEndpointsRequest, basic) { + Location::Model::DescribeEndpointsRequest req; + + req.setServiceCode("test-sc"); + req.setId("test-id"); + req.setType("test-type"); + + EXPECT_TRUE(req.serviceCode() == "test-sc"); + EXPECT_TRUE(req.id() == "test-id"); + EXPECT_TRUE(req.type() == "test-type"); +} + diff --git a/test/core/location_model_describeendpoints_result_ut.cc b/test/core/location_model_describeendpoints_result_ut.cc new file mode 100644 index 000000000..cd7c2dd4d --- /dev/null +++ b/test/core/location_model_describeendpoints_result_ut.cc @@ -0,0 +1,58 @@ +#include +#include +#include "gtest/gtest.h" +#include "alibabacloud/core/location/model/DescribeEndpointsResult.h" + +using namespace std; +using namespace AlibabaCloud; + +TEST(DescribeEndpointsResult, basic) { + const string payload = "{\"RequestId\":\"test-request-id\",\"Success\":true,\"Endpoints\":{\"Endpoint\":[{\"Endpoint\":\"test-ep\",\"Id\":\"test-id\",\"Namespace\":\"test-namespace\",\"SerivceCode\":\"test-service-code\",\"Type\":\"test-type\",\"Protocols\":{\"Protocols\":[\"a\",\"b\"]}}]}}"; + Location::Model::DescribeEndpointsResult res(payload); + + EXPECT_TRUE(res.success()); + EXPECT_TRUE(res.endpoints().size() == 1); + EXPECT_TRUE(res.endpoints()[0].endpoint == "test-ep"); + EXPECT_TRUE(res.endpoints()[0].id == "test-id"); + EXPECT_TRUE(res.endpoints()[0].namespace_ == "test-namespace"); + EXPECT_TRUE(res.endpoints()[0].serivceCode == "test-service-code"); + EXPECT_TRUE(res.endpoints()[0].type == "test-type"); + EXPECT_TRUE(res.endpoints()[0].protocols.size() == 2); + EXPECT_TRUE(res.endpoints()[0].protocols[0] == "a"); + EXPECT_TRUE(res.endpoints()[0].protocols[1] == "b"); +} + +TEST(DescribeEndpointsResult, set) { + + Location::Model::DescribeEndpointsResult res; + + res.setSuccess(true); + EXPECT_TRUE(res.success()); + res.setSuccess(false); + EXPECT_TRUE(res.success() == false); + + std::vector protocols; + protocols.push_back("p1"); + protocols.push_back("p2"); + Location::Model::DescribeEndpointsResult::Endpoint ep; + ep.endpoint = "ep"; + ep.id = "id"; + ep.namespace_ = "ns"; + ep.serivceCode = "sc"; + ep.type = "t"; + ep.protocols = protocols; + std::vector endpoints_; + endpoints_.push_back(ep); + res.setEndpoints(endpoints_); + res.setSuccess(true); + EXPECT_TRUE(res.success()); + EXPECT_TRUE(res.endpoints().size() == 1); + EXPECT_TRUE(res.endpoints()[0].endpoint == "ep"); + EXPECT_TRUE(res.endpoints()[0].id == "id"); + EXPECT_TRUE(res.endpoints()[0].namespace_ == "ns"); + EXPECT_TRUE(res.endpoints()[0].serivceCode == "sc"); + EXPECT_TRUE(res.endpoints()[0].type == "t"); + EXPECT_TRUE(res.endpoints()[0].protocols.size() == 2); + EXPECT_TRUE(res.endpoints()[0].protocols[0] == "p1"); + EXPECT_TRUE(res.endpoints()[0].protocols[1] == "p2"); +} diff --git a/test/core/sts_model_assumerole_request_ut.cc b/test/core/sts_model_assumerole_request_ut.cc new file mode 100644 index 000000000..fbff3d0c0 --- /dev/null +++ b/test/core/sts_model_assumerole_request_ut.cc @@ -0,0 +1,22 @@ +#include +#include +#include "gtest/gtest.h" +#include "alibabacloud/core/sts/model/AssumeRoleRequest.h" + +using namespace std; +using namespace AlibabaCloud; + +TEST(AssumeRoleRequest, basic) { + const string policy = "test_policy"; + const string role_arn = "test_role_arn"; + const string role_session_name = "test_role_session_name"; + Sts::Model::AssumeRoleRequest req; + req.setDurationSeconds(100); + req.setPolicy(policy); + req.setRoleArn(role_arn); + req.setRoleSessionName(role_session_name); + EXPECT_TRUE(req.durationSeconds() == 100); + EXPECT_TRUE(req.policy() == policy); + EXPECT_TRUE(req.roleArn() == role_arn); + EXPECT_TRUE(req.roleSessionName() == role_session_name); +} diff --git a/test/core/sts_model_assumerole_result_ut.cc b/test/core/sts_model_assumerole_result_ut.cc new file mode 100644 index 000000000..7f1af4d09 --- /dev/null +++ b/test/core/sts_model_assumerole_result_ut.cc @@ -0,0 +1,41 @@ +#include +#include +#include "gtest/gtest.h" +#include "alibabacloud/core/sts/model/AssumeRoleResult.h" + +using namespace std; +using namespace AlibabaCloud; + +TEST(AssumeRoleResult, basic) { + const string payload = "{\"RequestId\":\"a-b-c-d\",\"AssumedRoleUser\":{\"AssumedRoleId\":\"test_assumed_role_id\",\"Arn\":\"test_arn\"},\"Credentials\":{\"AccessKeyId\":\"test_access_key_id\",\"AccessKeySecret\":\"test_access_key_secret\",\"Expiration\":\"100\",\"SecurityToken\":\"test_security_token\"}}"; + Sts::Model::AssumeRoleResult res(payload); + + string arn = "test_arn"; + string assumed_role_id = "test_assumed_role_id"; + + string access_key_id = "test_access_key_id"; + string access_key_secret = "test_access_key_secret"; + string expiration = "100"; + string security_token = "test_security_token"; + + EXPECT_TRUE(res.assumedRoleUser().arn == arn); + EXPECT_TRUE(res.assumedRoleUser().assumedRoleId == assumed_role_id); + + EXPECT_TRUE(res.credentials().accessKeyId == access_key_id); + EXPECT_TRUE(res.credentials().accessKeySecret == access_key_secret); + EXPECT_TRUE(res.credentials().expiration == expiration); + EXPECT_TRUE(res.credentials().securityToken == security_token); +} + +TEST(AssumeRoleResult, empty) { + + Sts::Model::AssumeRoleResult res; + + EXPECT_TRUE(res.assumedRoleUser().arn.empty()); + EXPECT_TRUE(res.assumedRoleUser().assumedRoleId.empty()); + + EXPECT_TRUE(res.credentials().accessKeyId.empty()); + EXPECT_TRUE(res.credentials().accessKeySecret.empty()); + EXPECT_TRUE(res.credentials().expiration.empty()); + EXPECT_TRUE(res.credentials().securityToken.empty()); +} diff --git a/test/core/sts_model_getcalleridentity_request_ut.cc b/test/core/sts_model_getcalleridentity_request_ut.cc new file mode 100644 index 000000000..ce2b6cecc --- /dev/null +++ b/test/core/sts_model_getcalleridentity_request_ut.cc @@ -0,0 +1,12 @@ +#include +#include +#include "gtest/gtest.h" +#include "alibabacloud/core/sts/model/GetCallerIdentityRequest.h" + +using namespace std; +using namespace AlibabaCloud; + +TEST(GetCallerIdentityRequest, basic) { + Sts::Model::GetCallerIdentityRequest req; + EXPECT_TRUE(req.actionName() == "GetCallerIdentity"); +} diff --git a/test/core/sts_model_getcalleridentity_result_ut.cc b/test/core/sts_model_getcalleridentity_result_ut.cc new file mode 100644 index 000000000..d485f07f7 --- /dev/null +++ b/test/core/sts_model_getcalleridentity_result_ut.cc @@ -0,0 +1,29 @@ +#include +#include +#include "gtest/gtest.h" +#include "alibabacloud/core/sts/model/GetCallerIdentityResult.h" + +using namespace std; +using namespace AlibabaCloud; + +TEST(GetCallerIdentityResult, basic) { + const string payload = "{\"Request\":\"test-request-id\",\"AccountId\":\"test_account_id\",\"Arn\":\"test_arn\",\"UserId\":\"test_user_id\"}"; + Sts::Model::GetCallerIdentityResult res(payload); + + string arn = "test_arn"; + string account_id = "test_account_id"; + string user_id = "test_user_id"; + + EXPECT_TRUE(res.accountId() == account_id); + EXPECT_TRUE(res.arn() == arn); + EXPECT_TRUE(res.userId() == user_id); +} + +TEST(GetCallerIdentityResult, empty) { + + Sts::Model::GetCallerIdentityResult res; + + EXPECT_TRUE(res.accountId().empty()); + EXPECT_TRUE(res.arn().empty()); + EXPECT_TRUE(res.userId().empty()); +}