// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 #pragma once #ifndef S3_EXAMPLES_S3_GTESTS_H #define S3_EXAMPLES_S3_GTESTS_H #include #include #include namespace AwsDocTest { class Lambda_GTests : public testing::Test { protected: void SetUp() override; void TearDown() override; static void SetUpTestSuite(); static void TearDownTestSuite(); static Aws::String preconditionError(); void AddCommandLineResponses(const std::vector &responses); bool getTrailingInt(const std::string &string, int &result); // s_clientConfig must be a pointer because the client config must be initialized // after InitAPI. static std::unique_ptr s_clientConfig; std::stringbuf m_coutBuffer; // Used to silence cout. std::streambuf *m_savedBuffer = nullptr; private: bool suppressStdOut(); static Aws::SDKOptions s_options; std::stringbuf m_cinBuffer; std::streambuf *m_savedInBuffer = nullptr; }; } // AwsDocTest #endif //S3_EXAMPLES_S3_GTESTS_H