#ifndef AOS_COMMON_GTEST_PROD_H_
#define AOS_COMMON_GTEST_PROD_H_

#include "gtest/gtest_prod.h"

// These macros replace gtest's FRIEND_TEST if the test is in a different
// namespace than the code that needs to make it a friend.
// Example:
//  foo.h:
//   namespace bla {
//   namespace testing {
//
//   FORWARD_DECLARE_TEST_CASE(FooTest, Bar);
//
//   }  // namespace testing
//
//   class Foo {
//     FRIEND_TEST_NAMESPACE(FooTest, Bar, testing);
//   };
//
//   }  // namespace bla
//  foo_test.cc:
//   namespace bla {
//   namespace testing {
//
//   TEST(FooTest, Bar) {
//     access private members of Foo
//   }
//
//   }  // namespace testing
//   }  // namespace bla
#define FORWARD_DECLARE_TEST_CASE(test_case_name, test_name) \
    class test_case_name##_##test_name##_Test;
#define FRIEND_TEST_NAMESPACE(test_case_name, test_name, namespace_name) \
    friend class namespace_name::test_case_name##_##test_name##_Test

#endif  // AOS_COMMON_GTEST_PROD_H_
