add more unit test for location and std

This commit is contained in:
zhangzifa
2019-01-12 23:19:37 +08:00
committed by Jackson Tian
parent 66910b1961
commit 352be1dd14
7 changed files with 192 additions and 1 deletions

View File

@@ -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

View File

@@ -0,0 +1,20 @@
#include <iostream>
#include <stdio.h>
#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");
}

View File

@@ -0,0 +1,58 @@
#include <iostream>
#include <stdio.h>
#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<std::string> 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<Location::Model::DescribeEndpointsResult::Endpoint> 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");
}

View File

@@ -0,0 +1,22 @@
#include <iostream>
#include <stdio.h>
#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);
}

View File

@@ -0,0 +1,41 @@
#include <iostream>
#include <stdio.h>
#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());
}

View File

@@ -0,0 +1,12 @@
#include <iostream>
#include <stdio.h>
#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");
}

View File

@@ -0,0 +1,29 @@
#include <iostream>
#include <stdio.h>
#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());
}