From 563e9076019f604326833f3b9b2836ffad6c1905 Mon Sep 17 00:00:00 2001 From: zhangzifa Date: Fri, 8 Mar 2019 13:07:25 +0800 Subject: [PATCH] fix ecs deleteInstance invalid Force parameter --- ecs/src/model/DeleteInstanceRequest.cc | 158 +++++++++--------- .../ecs/ecs_describeInstances_ft.cc | 21 +++ .../slb/slb_describeLoadBalancers_ft.cc | 2 +- 3 files changed, 103 insertions(+), 78 deletions(-) diff --git a/ecs/src/model/DeleteInstanceRequest.cc b/ecs/src/model/DeleteInstanceRequest.cc index 9e58c6261..f143e91f2 100644 --- a/ecs/src/model/DeleteInstanceRequest.cc +++ b/ecs/src/model/DeleteInstanceRequest.cc @@ -25,80 +25,84 @@ DeleteInstanceRequest::DeleteInstanceRequest() : DeleteInstanceRequest::~DeleteInstanceRequest() {} -long DeleteInstanceRequest::getResourceOwnerId()const -{ - return resourceOwnerId_; -} - -void DeleteInstanceRequest::setResourceOwnerId(long resourceOwnerId) -{ - resourceOwnerId_ = resourceOwnerId; - setParameter("ResourceOwnerId", std::to_string(resourceOwnerId)); -} - -std::string DeleteInstanceRequest::getInstanceId()const -{ - return instanceId_; -} - -void DeleteInstanceRequest::setInstanceId(const std::string& instanceId) -{ - instanceId_ = instanceId; - setParameter("InstanceId", instanceId); -} - -std::string DeleteInstanceRequest::getResourceOwnerAccount()const -{ - return resourceOwnerAccount_; -} - -void DeleteInstanceRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount) -{ - resourceOwnerAccount_ = resourceOwnerAccount; - setParameter("ResourceOwnerAccount", resourceOwnerAccount); -} - -std::string DeleteInstanceRequest::getOwnerAccount()const -{ - return ownerAccount_; -} - -void DeleteInstanceRequest::setOwnerAccount(const std::string& ownerAccount) -{ - ownerAccount_ = ownerAccount; - setParameter("OwnerAccount", ownerAccount); -} - -bool DeleteInstanceRequest::getTerminateSubscription()const -{ - return terminateSubscription_; -} - -void DeleteInstanceRequest::setTerminateSubscription(bool terminateSubscription) -{ - terminateSubscription_ = terminateSubscription; - setParameter("TerminateSubscription", std::to_string(terminateSubscription)); -} - -bool DeleteInstanceRequest::getForce()const -{ - return force_; -} - -void DeleteInstanceRequest::setForce(bool force) -{ - force_ = force; - setParameter("Force", std::to_string(force)); -} - -long DeleteInstanceRequest::getOwnerId()const -{ - return ownerId_; -} - -void DeleteInstanceRequest::setOwnerId(long ownerId) -{ - ownerId_ = ownerId; - setParameter("OwnerId", std::to_string(ownerId)); -} - +long DeleteInstanceRequest::getResourceOwnerId()const +{ + return resourceOwnerId_; +} + +void DeleteInstanceRequest::setResourceOwnerId(long resourceOwnerId) +{ + resourceOwnerId_ = resourceOwnerId; + setParameter("ResourceOwnerId", std::to_string(resourceOwnerId)); +} + +std::string DeleteInstanceRequest::getInstanceId()const +{ + return instanceId_; +} + +void DeleteInstanceRequest::setInstanceId(const std::string& instanceId) +{ + instanceId_ = instanceId; + setParameter("InstanceId", instanceId); +} + +std::string DeleteInstanceRequest::getResourceOwnerAccount()const +{ + return resourceOwnerAccount_; +} + +void DeleteInstanceRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount) +{ + resourceOwnerAccount_ = resourceOwnerAccount; + setParameter("ResourceOwnerAccount", resourceOwnerAccount); +} + +std::string DeleteInstanceRequest::getOwnerAccount()const +{ + return ownerAccount_; +} + +void DeleteInstanceRequest::setOwnerAccount(const std::string& ownerAccount) +{ + ownerAccount_ = ownerAccount; + setParameter("OwnerAccount", ownerAccount); +} + +bool DeleteInstanceRequest::getTerminateSubscription()const +{ + return terminateSubscription_; +} + +void DeleteInstanceRequest::setTerminateSubscription(bool terminateSubscription) +{ + terminateSubscription_ = terminateSubscription; + setParameter("TerminateSubscription", std::to_string(terminateSubscription)); +} + +bool DeleteInstanceRequest::getForce()const +{ + return force_; +} + +void DeleteInstanceRequest::setForce(bool force) +{ + force_ = force; + if (force) { + setParameter("Force", "true"); + } else { + setParameter("Force", "false"); + } +} + +long DeleteInstanceRequest::getOwnerId()const +{ + return ownerId_; +} + +void DeleteInstanceRequest::setOwnerId(long ownerId) +{ + ownerId_ = ownerId; + setParameter("OwnerId", std::to_string(ownerId)); +} + diff --git a/test/function_test/ecs/ecs_describeInstances_ft.cc b/test/function_test/ecs/ecs_describeInstances_ft.cc index 145ce8335..b1d4ff708 100644 --- a/test/function_test/ecs/ecs_describeInstances_ft.cc +++ b/test/function_test/ecs/ecs_describeInstances_ft.cc @@ -31,6 +31,27 @@ namespace { ShutdownSdk(); } + TEST(ecs, deleteInstance) { + utUtils utils; + string key = utils.get_env("ENV_AccessKeyId"); + string secret = utils.get_env("ENV_AccessKeySecret"); + + InitializeSdk(); + ClientConfiguration configuration("cn-hangzhou"); + EcsClient client(key, secret, configuration); + + Model::DeleteInstanceRequest delReq; + + delReq.setInstanceId("non-exist-ecs-instance"); + delReq.setForce(true); + + auto outcome = client.deleteInstance(delReq); + + EXPECT_TRUE(outcome.error().errorCode() == "InvalidInstanceId.NotFound"); + EXPECT_TRUE(outcome.error().errorMessage() == "The specified InstanceId does not exist."); + ShutdownSdk(); + } + TEST(ecs, describeInstancesViaCommonRequest) { utUtils utils; string key = utils.get_env("ENV_AccessKeyId"); diff --git a/test/function_test/slb/slb_describeLoadBalancers_ft.cc b/test/function_test/slb/slb_describeLoadBalancers_ft.cc index 65b539fe8..be601dea8 100644 --- a/test/function_test/slb/slb_describeLoadBalancers_ft.cc +++ b/test/function_test/slb/slb_describeLoadBalancers_ft.cc @@ -21,7 +21,7 @@ namespace { auto outcome = client.describeLoadBalancers(request); EXPECT_TRUE(outcome.isSuccess()); EXPECT_TRUE(outcome.error().errorCode().empty()); - EXPECT_TRUE(outcome.result().getTotalCount() == 0); + EXPECT_TRUE(outcome.result().getTotalCount() >= 0); ShutdownSdk(); } }