10#include <gtest/gtest.h> 
   12#include <userver/engine/run_in_coro.hpp>   
   13#include <userver/utest/assert_macros.hpp> 
   14#include <userver/utest/test_case_macros.hpp> 
   15#include <userver/utils/assert.hpp> 
   16#include <userver/utils/strong_typedef.hpp> 
   21void PrintTo(std::chrono::seconds s, std::ostream* os);
 
   22void PrintTo(std::chrono::milliseconds ms, std::ostream* os);
 
   23void PrintTo(std::chrono::microseconds us, std::ostream* os);
 
   24void PrintTo(std::chrono::nanoseconds ns, std::ostream* os);
 
   28USERVER_NAMESPACE_BEGIN
 
   39namespace formats::
json {
 
   43void PrintTo(
const Value&, std::ostream*);
 
   50void PrintTo(
const StrongTypedef<Tag, T, Ops>& v, std::ostream* os) {
 
   51  ::testing::internal::UniversalTersePrint(v.GetUnderlying(), os);
 
   58template <
int Prec, 
typename RoundPolicy>
 
   61template <
int Prec, 
typename RoundPolicy>
 
   62void PrintTo(
const Decimal<Prec, RoundPolicy>& v, std::ostream* os) {
 
   72#define DISABLED_IN_DEBUG_TEST_NAME(name) DISABLED_##name 
   75#define DISABLED_IN_DEBUG_TEST_NAME(name) name 
   80#define DISABLED_IN_MAC_OS_TEST_NAME(name) DISABLED_##name 
   83#define DISABLED_IN_MAC_OS_TEST_NAME(name) name 
   88#define DISABLED_IN_LIBCPP_TEST_NAME(name) DISABLED_##name 
   91#define DISABLED_IN_LIBCPP_TEST_NAME(name) name 
  119#define UTEST(test_suite_name, test_name) 
  126#define UTEST_DEATH(test_suite_name, test_name) 
  134#define UTEST_MT(test_suite_name, test_name, thread_count) 
  141#define UTEST_F(test_suite_name, test_name) 
  148#define UTEST_F_DEATH(test_suite_name, test_name) 
  156#define UTEST_F_MT(test_suite_name, test_name, thread_count) 
  163#define UTEST_P(test_suite_name, test_name) 
  170#define UTEST_P_MT(test_suite_name, test_name, thread_count) 
  177#define TYPED_UTEST(test_suite_name, test_name) 
  185#define TYPED_UTEST_MT(test_suite_name, test_name, thread_count) 
  192#define TYPED_UTEST_P(test_suite_name, test_name) 
  200#define TYPED_UTEST_P_MT(test_suite_name, test_name, thread_count) 
  207#define TYPED_UTEST_SUITE(test_suite_name, types) 
  211  TYPED_TEST_SUITE
(test_suite_name, types, 
  212                   USERVER_NAMESPACE
::utest::impl::DefaultNameGenerator); 
  214  struct UtestImplForceSemicolon 
  220#define INSTANTIATE_UTEST_SUITE_P(prefix, test_suite_name, ...) 
  224      test_suite_name, USERVER_NAMESPACE
::utest::impl::TestLauncherParametric) 
  225  INSTANTIATE_TEST_SUITE_P
(prefix, test_suite_name, __VA_ARGS__); 
  227  struct UtestImplForceSemicolon 
  233#define REGISTER_TYPED_UTEST_SUITE_P(test_suite_name, ...) 
  235  REGISTER_TYPED_TEST_SUITE_P
(test_suite_name, __VA_ARGS__); 
  237  struct UtestImplForceSemicolon 
  243#define INSTANTIATE_TYPED_UTEST_SUITE_P(prefix, test_suite_name, types) 
  245  INSTANTIATE_TYPED_TEST_SUITE_P
( 
  246      prefix, test_suite_name, types, 
  247      USERVER_NAMESPACE
::utest::impl::DefaultNameGenerator); 
  249  struct UtestImplForceSemicolon 
  255#define TYPED_UTEST_SUITE_P(test_suite_name) 
  259  TYPED_TEST_SUITE_P
(test_suite_name); 
  261  struct UtestImplForceSemicolon