/* * Copyright (c) Contributors to the Open 3D Engine Project. * For complete copyright and license terms please see the LICENSE at the root of this distribution. * * SPDX-License-Identifier: Apache-2.0 OR MIT * */ #include #include #include #include #include using namespace AWSCore; class AWSApiClientJobConfigTest : public AWSCoreFixture , public AWSCredentialRequestBus::Handler { public: AWSApiClientJobConfigTest() : m_credentialHandlerCounter(0) { } void SetUp() override { AWSCoreFixture::SetUpFixture(); m_credentialHandlerCounter = 0; } // AWSCredentialRequestBus interface implementation int GetCredentialHandlerOrder() const override { return -1; } std::shared_ptr GetCredentialsProvider() override { m_credentialHandlerCounter++; return m_credentialsHandler; } std::shared_ptr m_credentialsHandler; int m_credentialHandlerCounter; }; TEST_F(AWSApiClientJobConfigTest, GetClient_HaveHandlerReturnCredentialsProvider_CreateClientWithExpectedCredential) { AWSCredentialRequestBus::Handler::BusConnect(); m_credentialsHandler = std::make_shared(); AwsApiClientJobConfig testClientJobConfig; auto actualClient = testClientJobConfig.GetClient(); EXPECT_TRUE(m_credentialHandlerCounter == 1); EXPECT_TRUE(actualClient); AWSCredentialRequestBus::Handler::BusDisconnect(); } TEST_F(AWSApiClientJobConfigTest, GetClient_NoHandlerReturnCredentialsProvider_CreateClientWithDefaultCredential) { AwsApiClientJobConfig testClientJobConfig; auto actualClient = testClientJobConfig.GetClient(); EXPECT_TRUE(m_credentialHandlerCounter == 0); EXPECT_TRUE(actualClient); }