Silence aws logging for unit test and have a new AWSNativeSDK as entry point for test env (#6865)
* Silence aws logging for unit test * Create a new AWSNativeSDK entry point for test environment only * Update naming for target and file
This commit is contained in:
@@ -25,6 +25,24 @@ ly_add_target(
|
||||
AZ::AzCore
|
||||
)
|
||||
|
||||
ly_add_target(
|
||||
NAME AWSNativeSDKTestLibs STATIC
|
||||
NAMESPACE AZ
|
||||
FILES_CMAKE
|
||||
aws_native_sdk_test_files.cmake
|
||||
INCLUDE_DIRECTORIES
|
||||
PUBLIC
|
||||
include
|
||||
tests/libs
|
||||
PRIVATE
|
||||
source
|
||||
BUILD_DEPENDENCIES
|
||||
PRIVATE
|
||||
3rdParty::AWSNativeSDK::Core
|
||||
AZ::AzCore
|
||||
AZ::AzTest
|
||||
)
|
||||
|
||||
################################################################################
|
||||
# Tests
|
||||
################################################################################
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
#
|
||||
# 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
|
||||
#
|
||||
#
|
||||
|
||||
set(FILES
|
||||
tests/libs/AWSNativeSDKTestManager.cpp
|
||||
tests/libs/AWSNativeSDKTestManager.h
|
||||
)
|
||||
@@ -89,5 +89,4 @@ namespace AWSNativeSDKInit
|
||||
Platform::CustomizeShutdown();
|
||||
#endif // #if defined(PLATFORM_SUPPORTS_AWS_NATIVE_SDK)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
* 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 <AWSNativeSDKTestManager.h>
|
||||
|
||||
#include <AzCore/Module/Environment.h>
|
||||
#include <AzTest/Utils.h>
|
||||
|
||||
#include <AWSNativeSDKInit/AWSLogSystemInterface.h>
|
||||
#include <aws/core/Aws.h>
|
||||
#include <aws/core/utils/logging/AWSLogging.h>
|
||||
|
||||
namespace AWSNativeSDKTestLibs
|
||||
{
|
||||
AZ::EnvironmentVariable<AWSNativeSDKTestManager> AWSNativeSDKTestManager::s_sdkManager = nullptr;
|
||||
|
||||
AWSNativeSDKTestManager::AWSNativeSDKTestManager()
|
||||
{
|
||||
AZ::Test::SetEnv("AWS_DEFAULT_REGION", "us-east-1", 1);
|
||||
m_awsSDKOptions.memoryManagementOptions.memoryManager = &m_memoryManager;
|
||||
Aws::InitAPI(m_awsSDKOptions);
|
||||
}
|
||||
|
||||
AWSNativeSDKTestManager::~AWSNativeSDKTestManager()
|
||||
{
|
||||
Aws::ShutdownAPI(m_awsSDKOptions);
|
||||
AZ::Test::UnsetEnv("AWS_DEFAULT_REGION");
|
||||
}
|
||||
|
||||
void AWSNativeSDKTestManager::Init()
|
||||
{
|
||||
s_sdkManager = AZ::Environment::CreateVariable<AWSNativeSDKTestManager>(AWSNativeSDKTestManager::SdkManagerTag);
|
||||
}
|
||||
|
||||
void AWSNativeSDKTestManager::Shutdown()
|
||||
{
|
||||
s_sdkManager = nullptr;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
/*
|
||||
* 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
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <AzCore/Module/Environment.h>
|
||||
#include <AzCore/PlatformIncl.h>
|
||||
|
||||
#include <AWSNativeSDKInit/AWSMemoryInterface.h>
|
||||
|
||||
#include <aws/core/Aws.h>
|
||||
|
||||
namespace AWSNativeSDKTestLibs
|
||||
{
|
||||
// Entry point for AWSNativeSDK's initialization and shutdown for test environment
|
||||
// Use an AZ::Environment variable to enforce only one init and shutdown
|
||||
class AWSNativeSDKTestManager
|
||||
{
|
||||
public:
|
||||
static constexpr const char SdkManagerTag[] = "TestAWSSDKManager";
|
||||
|
||||
AWSNativeSDKTestManager();
|
||||
~AWSNativeSDKTestManager();
|
||||
|
||||
static void Init();
|
||||
static void Shutdown();
|
||||
|
||||
private:
|
||||
static AZ::EnvironmentVariable<AWSNativeSDKTestManager> s_sdkManager;
|
||||
|
||||
AWSNativeSDKInit::MemoryManager m_memoryManager;
|
||||
Aws::SDKOptions m_awsSDKOptions;
|
||||
};
|
||||
}
|
||||
@@ -106,13 +106,12 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED)
|
||||
3rdParty::AWSNativeSDK::AWSClientAuth
|
||||
AZ::AzCore
|
||||
AZ::AzFramework
|
||||
AZ::AWSNativeSDKInit
|
||||
AZ::AWSNativeSDKTestLibs
|
||||
Gem::AWSClientAuth.Static
|
||||
Gem::AWSCore
|
||||
Gem::HttpRequestor
|
||||
RUNTIME_DEPENDENCIES
|
||||
Gem::AWSCore
|
||||
AZ::AWSNativeSDKInit
|
||||
Gem::HttpRequestor
|
||||
)
|
||||
ly_add_googletest(
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
#include <AWSCoreBus.h>
|
||||
#include <ResourceMapping/AWSResourceMappingBus.h>
|
||||
#include <AWSClientAuthBus.h>
|
||||
#include <AWSNativeSDKInit/AWSNativeSDKInit.h>
|
||||
#include <AWSNativeSDKTestManager.h>
|
||||
#include <HttpRequestor/HttpRequestorBus.h>
|
||||
|
||||
#include <aws/core/utils/Outcome.h>
|
||||
@@ -542,7 +542,7 @@ namespace AWSClientAuthUnitTest
|
||||
m_jobContext.reset(aznew AZ::JobContext(*m_jobManager, *m_jobCancelGroup));
|
||||
AZ::JobContext::SetGlobalContext(m_jobContext.get());
|
||||
|
||||
AWSNativeSDKInit::InitializationManager::InitAwsApi();
|
||||
AWSNativeSDKTestLibs::AWSNativeSDKTestManager::Init();
|
||||
m_cognitoIdentityProviderClientMock = std::make_shared<CognitoIdentityProviderClientMock>();
|
||||
m_cognitoIdentityClientMock = std::make_shared<CognitoIdentityClientMock>();
|
||||
}
|
||||
@@ -557,8 +557,7 @@ namespace AWSClientAuthUnitTest
|
||||
m_cognitoIdentityProviderClientMock.reset();
|
||||
m_cognitoIdentityClientMock.reset();
|
||||
|
||||
AWSNativeSDKInit::InitializationManager::Shutdown();
|
||||
|
||||
AWSNativeSDKTestLibs::AWSNativeSDKTestManager::Shutdown();
|
||||
|
||||
AZ::AllocatorInstance<AZ::ThreadPoolAllocator>::Destroy();
|
||||
|
||||
|
||||
@@ -163,7 +163,7 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED)
|
||||
PRIVATE
|
||||
AZ::AzTest
|
||||
AZ::AzFramework
|
||||
AZ::AWSNativeSDKInit
|
||||
AZ::AWSNativeSDKTestLibs
|
||||
Gem::AWSCore.Static
|
||||
)
|
||||
|
||||
@@ -202,7 +202,7 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED)
|
||||
3rdParty::Qt::Gui
|
||||
3rdParty::Qt::Widgets
|
||||
AZ::AzTest
|
||||
AZ::AWSNativeSDKInit
|
||||
AZ::AWSNativeSDKTestLibs
|
||||
Gem::AWSCore.Static
|
||||
Gem::AWSCore.Editor.Static
|
||||
)
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
#include <AzTest/AzTest.h>
|
||||
|
||||
#include <AWSCoreSystemComponent.h>
|
||||
#include <AWSNativeSDKInit/AWSNativeSDKInit.h>
|
||||
#include <AWSNativeSDKTestManager.h>
|
||||
#include <Configuration/AWSCoreConfiguration.h>
|
||||
#include <Credential/AWSCredentialManager.h>
|
||||
#include <Framework/AWSApiJob.h>
|
||||
@@ -105,7 +105,7 @@ public:
|
||||
TEST_F(AWSCoreSystemComponentTest, ComponentActivateTest)
|
||||
{
|
||||
// Shutdown SDK which is init in fixture setup step
|
||||
AWSNativeSDKInit::InitializationManager::Shutdown();
|
||||
AWSNativeSDKTestLibs::AWSNativeSDKTestManager::Shutdown();
|
||||
|
||||
EXPECT_FALSE(m_coreSystemsComponent->IsAWSApiInitialized());
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
#include <Framework/JsonObjectHandler.h>
|
||||
#include <Framework/JsonWriter.h>
|
||||
|
||||
#include <AWSNativeSDKInit/AWSNativeSDKInit.h>
|
||||
#include <AWSNativeSDKTestManager.h>
|
||||
|
||||
namespace AWSCoreTestingUtils
|
||||
{
|
||||
@@ -138,7 +138,7 @@ public:
|
||||
m_app = AZStd::make_unique<AZ::ComponentApplication>();
|
||||
}
|
||||
|
||||
AWSNativeSDKInit::InitializationManager::InitAwsApi();
|
||||
AWSNativeSDKTestLibs::AWSNativeSDKTestManager::Init();
|
||||
}
|
||||
|
||||
void TearDown() override
|
||||
@@ -148,7 +148,7 @@ public:
|
||||
|
||||
void TearDownFixture(bool mockSettingsRegistry = true)
|
||||
{
|
||||
AWSNativeSDKInit::InitializationManager::Shutdown();
|
||||
AWSNativeSDKTestLibs::AWSNativeSDKTestManager::Shutdown();
|
||||
|
||||
if (mockSettingsRegistry)
|
||||
{
|
||||
|
||||
@@ -90,7 +90,7 @@ if(PAL_TRAIT_BUILD_TESTS_SUPPORTED)
|
||||
Gem::AWSCore
|
||||
Gem::AWSGameLift.Client.Static
|
||||
3rdParty::AWSNativeSDK::GameLiftClient
|
||||
AZ::AWSNativeSDKInit
|
||||
AZ::AWSNativeSDKTestLibs
|
||||
)
|
||||
# Add AWSGameLift.Client.Tests to googletest
|
||||
ly_add_googletest(
|
||||
|
||||
@@ -8,12 +8,13 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <AWSNativeSDKInit/AWSNativeSDKInit.h>
|
||||
#include <AWSNativeSDKTestManager.h>
|
||||
#include <AzCore/Jobs/JobManager.h>
|
||||
#include <AzCore/Jobs/JobManagerBus.h>
|
||||
#include <AzCore/Jobs/JobContext.h>
|
||||
#include <AzCore/Memory/PoolAllocator.h>
|
||||
#include <AzCore/UnitTest/TestTypes.h>
|
||||
#include <AzTest/Utils.h>
|
||||
|
||||
class AWSGameLiftClientFixture
|
||||
: public UnitTest::ScopedAllocatorSetupFixture
|
||||
@@ -38,12 +39,12 @@ public:
|
||||
m_jobContext.reset(aznew AZ::JobContext(*m_jobManager, *m_jobCancelGroup));
|
||||
AZ::JobContext::SetGlobalContext(m_jobContext.get());
|
||||
|
||||
AWSNativeSDKInit::InitializationManager::InitAwsApi();
|
||||
AWSNativeSDKTestLibs::AWSNativeSDKTestManager::Init();
|
||||
}
|
||||
|
||||
void TearDown() override
|
||||
{
|
||||
AWSNativeSDKInit::InitializationManager::Shutdown();
|
||||
AWSNativeSDKTestLibs::AWSNativeSDKTestManager::Shutdown();
|
||||
|
||||
AZ::JobContext::SetGlobalContext(nullptr);
|
||||
m_jobContext.reset();
|
||||
|
||||
Reference in New Issue
Block a user