Classes | Namespaces | Macros | Typedefs | Enumerations | Functions | Variables
gtest-internal.h File Reference
#include "gtest/internal/gtest-port.h"
#include <ctype.h>
#include <float.h>
#include <string.h>
#include <iomanip>
#include <limits>
#include <set>
#include "gtest/gtest-message.h"
#include "gtest/internal/gtest-string.h"
#include "gtest/internal/gtest-filepath.h"
#include "gtest/internal/gtest-type-util.h"
Include dependency graph for gtest-internal.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  testing::internal::AddReference< T >
 
struct  testing::internal::AddReference< T & >
 
struct  testing::internal::CompileAssertTypesEqual< T1, T2 >
 
struct  testing::internal::CompileAssertTypesEqual< T, T >
 
struct  testing::internal::ConstCharPtr
 
struct  testing::internal::EnableIf< bool >
 
struct  testing::internal::EnableIf< true >
 
class  testing::internal::FloatingPoint< RawType >
 
union  testing::internal::FloatingPoint< RawType >::FloatingPointUnion
 
class  testing::internal::ImplicitlyConvertible< From, To >
 
struct  testing::internal::IsAProtocolMessage< T >
 
class  testing::internal::NativeArray< Element >
 
class  testing::internal::Random
 
struct  testing::internal::RemoveConst< T >
 
struct  testing::internal::RemoveConst< const T >
 
struct  testing::internal::RemoveConst< const T[N]>
 
struct  testing::internal::RemoveReference< T >
 
struct  testing::internal::RemoveReference< T & >
 
class  testing::internal::ScopedTrace
 
class  testing::internal::TestFactoryBase
 
class  testing::internal::TestFactoryImpl< TestClass >
 
class  testing::internal::TypeIdHelper< T >
 

Namespaces

 proto2
 
 testing
 
 testing::internal
 

Macros

#define GTEST_ADD_REFERENCE_(T)   typename ::testing::internal::AddReference<T>::type
 
#define GTEST_CONCAT_TOKEN_(foo, bar)   GTEST_CONCAT_TOKEN_IMPL_(foo, bar)
 
#define GTEST_CONCAT_TOKEN_IMPL_(foo, bar)   foo ## bar
 
#define GTEST_FATAL_FAILURE_(message)   return GTEST_MESSAGE_(message, ::testing::TestPartResult::kFatalFailure)
 
#define GTEST_IS_NULL_LITERAL_(x)   (sizeof(::testing::internal::IsNullLiteralHelper(x)) == 1)
 
#define GTEST_MESSAGE_(message, result_type)   GTEST_MESSAGE_AT_(__FILE__, __LINE__, message, result_type)
 
#define GTEST_MESSAGE_AT_(file, line, message, result_type)
 
#define GTEST_NONFATAL_FAILURE_(message)   GTEST_MESSAGE_(message, ::testing::TestPartResult::kNonFatalFailure)
 
#define GTEST_REFERENCE_TO_CONST_(T)   GTEST_ADD_REFERENCE_(const GTEST_REMOVE_REFERENCE_(T))
 
#define GTEST_REMOVE_CONST_(T)   typename ::testing::internal::RemoveConst<T>::type
 
#define GTEST_REMOVE_REFERENCE_(T)   typename ::testing::internal::RemoveReference<T>::type
 
#define GTEST_REMOVE_REFERENCE_AND_CONST_(T)   GTEST_REMOVE_CONST_(GTEST_REMOVE_REFERENCE_(T))
 
#define GTEST_SUCCESS_(message)   GTEST_MESSAGE_(message, ::testing::TestPartResult::kSuccess)
 
#define GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_(statement)   if (::testing::internal::AlwaysTrue()) { statement; }
 
#define GTEST_TEST_(test_case_name, test_name, parent_class, parent_id)
 
#define GTEST_TEST_ANY_THROW_(statement, fail)
 
#define GTEST_TEST_BOOLEAN_(expression, text, actual, expected, fail)
 
#define GTEST_TEST_CLASS_NAME_(test_case_name, test_name)   test_case_name##_##test_name##_Test
 
#define GTEST_TEST_NO_FATAL_FAILURE_(statement, fail)
 
#define GTEST_TEST_NO_THROW_(statement, fail)
 
#define GTEST_TEST_THROW_(statement, expected_exception, fail)
 

Typedefs

typedef FloatingPoint< double > testing::internal::Double
 
typedef FloatingPoint< float > testing::internal::Float
 
typedef int testing::internal::IsContainer
 
typedef char testing::internal::IsNotContainer
 
typedef void(* testing::internal::SetUpTestCaseFunc) ()
 
typedef void(* testing::internal::TearDownTestCaseFunc) ()
 

Enumerations

enum  testing::internal::RelationToSource { testing::internal::kReference, testing::internal::kCopy }
 

Functions

bool testing::internal::AlwaysFalse ()
 
GTEST_API_ bool testing::internal::AlwaysTrue ()
 
GTEST_API_ std::string testing::internal::AppendUserMessage (const std::string &gtest_msg, const Message &user_msg)
 
template<typename Iter , typename Element >
Iter testing::internal::ArrayAwareFind (Iter begin, Iter end, const Element &elem)
 
template<typename T , typename U >
bool testing::internal::ArrayEq (const T &lhs, const U &rhs)
 
template<typename T , typename U >
bool testing::internal::ArrayEq (const T *lhs, size_t size, const U *rhs)
 
template<typename T , typename U , size_t N>
bool testing::internal::ArrayEq (const T(&lhs)[N], const U(&rhs)[N])
 
template<typename T , typename U >
void testing::internal::CopyArray (const T &from, U *to)
 
template<typename T , typename U >
void testing::internal::CopyArray (const T *from, size_t size, U *to)
 
template<typename T , typename U , size_t N>
void testing::internal::CopyArray (const T(&from)[N], U(*to)[N])
 
GTEST_API_ AssertionResult testing::internal::EqFailure (const char *expected_expression, const char *actual_expression, const std::string &expected_value, const std::string &actual_value, bool ignoring_case)
 
GTEST_API_ std::string testing::internal::GetBoolAssertionFailureMessage (const AssertionResult &assertion_result, const char *expression_text, const char *actual_predicate_value, const char *expected_predicate_value)
 
GTEST_API_ std::string testing::internal::GetCurrentOsStackTraceExceptTop (UnitTest *unit_test, int skip_count)
 
GTEST_API_ TypeId testing::internal::GetTestTypeId ()
 
template<typename T >
TypeId testing::internal::GetTypeId ()
 
template<class C >
IsContainer testing::internal::IsContainerTest (int, typename C::iterator *=NULL, typename C::const_iterator *=NULL)
 
template<class C >
IsNotContainer testing::internal::IsContainerTest (long)
 
char(& testing::internal::IsNullLiteralHelper (...))[2]
 
char testing::internal::IsNullLiteralHelper (Secret *p)
 
GTEST_API_ TestInfo * testing::internal::MakeAndRegisterTestInfo (const char *test_case_name, const char *name, const char *type_param, const char *value_param, TypeId fixture_class_id, SetUpTestCaseFunc set_up_tc, TearDownTestCaseFunc tear_down_tc, TestFactoryBase *factory)
 
template<typename T >
::std::string testing::PrintToString (const T &value)
 
GTEST_API_ bool testing::internal::SkipPrefix (const char *prefix, const char **pstr)
 

Variables

GTEST_API_ int testing::internal::g_init_gtest_count = 0
 
class GTEST_API_ testing::internal::ScopedTrace testing::internal::GTEST_ATTRIBUTE_UNUSED_
 
const GTEST_API_ char testing::internal::kStackTraceMarker [] = "\nStack trace:\n"
 
const typedef void * testing::internal::TypeId
 

Macro Definition Documentation

◆ GTEST_ADD_REFERENCE_

#define GTEST_ADD_REFERENCE_ (   T)    typename ::testing::internal::AddReference<T>::type

Definition at line 760 of file gtest-internal.h.

◆ GTEST_CONCAT_TOKEN_

#define GTEST_CONCAT_TOKEN_ (   foo,
  bar 
)    GTEST_CONCAT_TOKEN_IMPL_(foo, bar)

Definition at line 73 of file gtest-internal.h.

◆ GTEST_CONCAT_TOKEN_IMPL_

#define GTEST_CONCAT_TOKEN_IMPL_ (   foo,
  bar 
)    foo ## bar

Definition at line 74 of file gtest-internal.h.

◆ GTEST_FATAL_FAILURE_

#define GTEST_FATAL_FAILURE_ (   message)    return GTEST_MESSAGE_(message, ::testing::TestPartResult::kFatalFailure)

Definition at line 1031 of file gtest-internal.h.

◆ GTEST_IS_NULL_LITERAL_

#define GTEST_IS_NULL_LITERAL_ (   x)    (sizeof(::testing::internal::IsNullLiteralHelper(x)) == 1)

Definition at line 132 of file gtest-internal.h.

◆ GTEST_MESSAGE_

#define GTEST_MESSAGE_ (   message,
  result_type 
)    GTEST_MESSAGE_AT_(__FILE__, __LINE__, message, result_type)

Definition at line 1028 of file gtest-internal.h.

◆ GTEST_MESSAGE_AT_

#define GTEST_MESSAGE_AT_ (   file,
  line,
  message,
  result_type 
)
Value:
::testing::internal::AssertHelper(result_type, file, line, message) \

Definition at line 1024 of file gtest-internal.h.

◆ GTEST_NONFATAL_FAILURE_

#define GTEST_NONFATAL_FAILURE_ (   message)    GTEST_MESSAGE_(message, ::testing::TestPartResult::kNonFatalFailure)

Definition at line 1034 of file gtest-internal.h.

◆ GTEST_REFERENCE_TO_CONST_

#define GTEST_REFERENCE_TO_CONST_ (   T)    GTEST_ADD_REFERENCE_(const GTEST_REMOVE_REFERENCE_(T))

Definition at line 772 of file gtest-internal.h.

◆ GTEST_REMOVE_CONST_

#define GTEST_REMOVE_CONST_ (   T)    typename ::testing::internal::RemoveConst<T>::type

Definition at line 743 of file gtest-internal.h.

◆ GTEST_REMOVE_REFERENCE_

#define GTEST_REMOVE_REFERENCE_ (   T)    typename ::testing::internal::RemoveReference<T>::type

Definition at line 712 of file gtest-internal.h.

◆ GTEST_REMOVE_REFERENCE_AND_CONST_

#define GTEST_REMOVE_REFERENCE_AND_CONST_ (   T)    GTEST_REMOVE_CONST_(GTEST_REMOVE_REFERENCE_(T))

Definition at line 747 of file gtest-internal.h.

◆ GTEST_SUCCESS_

#define GTEST_SUCCESS_ (   message)    GTEST_MESSAGE_(message, ::testing::TestPartResult::kSuccess)

Definition at line 1037 of file gtest-internal.h.

◆ GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_

#define GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_ (   statement)    if (::testing::internal::AlwaysTrue()) { statement; }

Definition at line 1043 of file gtest-internal.h.

◆ GTEST_TEST_

#define GTEST_TEST_ (   test_case_name,
  test_name,
  parent_class,
  parent_id 
)
Value:
class GTEST_TEST_CLASS_NAME_(test_case_name, test_name) : public parent_class {\
public:\
GTEST_TEST_CLASS_NAME_(test_case_name, test_name)() {}\
private:\
virtual void TestBody();\
static ::testing::TestInfo* const test_info_ GTEST_ATTRIBUTE_UNUSED_;\
GTEST_DISALLOW_COPY_AND_ASSIGN_(\
GTEST_TEST_CLASS_NAME_(test_case_name, test_name));\
};\
\
::testing::TestInfo* const GTEST_TEST_CLASS_NAME_(test_case_name, test_name)\
::test_info_ =\
#test_case_name, #test_name, NULL, NULL, \
(parent_id), \
parent_class::SetUpTestCase, \
parent_class::TearDownTestCase, \
new ::testing::internal::TestFactoryImpl<\
GTEST_TEST_CLASS_NAME_(test_case_name, test_name)>);\
void GTEST_TEST_CLASS_NAME_(test_case_name, test_name)::TestBody()

Definition at line 1136 of file gtest-internal.h.

◆ GTEST_TEST_ANY_THROW_

#define GTEST_TEST_ANY_THROW_ (   statement,
  fail 
)
Value:
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
bool gtest_caught_any = false; \
try { \
GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_(statement); \
} \
catch (...) { \
gtest_caught_any = true; \
} \
if (!gtest_caught_any) { \
goto GTEST_CONCAT_TOKEN_(gtest_label_testanythrow_, __LINE__); \
} \
GTEST_CONCAT_TOKEN_(gtest_label_testanythrow_, __LINE__): \
fail("Expected: " #statement " throws an exception.\n" \
" Actual: it doesn't.")

Definition at line 1086 of file gtest-internal.h.

◆ GTEST_TEST_BOOLEAN_

#define GTEST_TEST_BOOLEAN_ (   expression,
  text,
  actual,
  expected,
  fail 
)
Value:
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
if (const ::testing::AssertionResult gtest_ar_ = \
::testing::AssertionResult(expression)) \
; \
else \
gtest_ar_, text, #actual, #expected).c_str())

Definition at line 1108 of file gtest-internal.h.

◆ GTEST_TEST_CLASS_NAME_

#define GTEST_TEST_CLASS_NAME_ (   test_case_name,
  test_name 
)    test_case_name##_##test_name##_Test

Definition at line 1132 of file gtest-internal.h.

◆ GTEST_TEST_NO_FATAL_FAILURE_

#define GTEST_TEST_NO_FATAL_FAILURE_ (   statement,
  fail 
)
Value:
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
::testing::internal::HasNewFatalFailureHelper gtest_fatal_failure_checker; \
GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_(statement); \
if (gtest_fatal_failure_checker.has_new_fatal_failure()) { \
goto GTEST_CONCAT_TOKEN_(gtest_label_testnofatal_, __LINE__); \
} \
GTEST_CONCAT_TOKEN_(gtest_label_testnofatal_, __LINE__): \
fail("Expected: " #statement " doesn't generate new fatal " \
"failures in the current thread.\n" \
" Actual: it does.")

Definition at line 1117 of file gtest-internal.h.

◆ GTEST_TEST_NO_THROW_

#define GTEST_TEST_NO_THROW_ (   statement,
  fail 
)
Value:
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
try { \
GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_(statement); \
} \
catch (...) { \
goto GTEST_CONCAT_TOKEN_(gtest_label_testnothrow_, __LINE__); \
} \
GTEST_CONCAT_TOKEN_(gtest_label_testnothrow_, __LINE__): \
fail("Expected: " #statement " doesn't throw an exception.\n" \
" Actual: it throws.")

Definition at line 1072 of file gtest-internal.h.

◆ GTEST_TEST_THROW_

#define GTEST_TEST_THROW_ (   statement,
  expected_exception,
  fail 
)
Value:
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
if (::testing::internal::ConstCharPtr gtest_msg = "") { \
bool gtest_caught_expected = false; \
try { \
GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_(statement); \
} \
catch (expected_exception const&) { \
gtest_caught_expected = true; \
} \
catch (...) { \
gtest_msg.value = \
"Expected: " #statement " throws an exception of type " \
#expected_exception ".\n Actual: it throws a different type."; \
goto GTEST_CONCAT_TOKEN_(gtest_label_testthrow_, __LINE__); \
} \
if (!gtest_caught_expected) { \
gtest_msg.value = \
"Expected: " #statement " throws an exception of type " \
#expected_exception ".\n Actual: it throws nothing."; \
goto GTEST_CONCAT_TOKEN_(gtest_label_testthrow_, __LINE__); \
} \
} else \
GTEST_CONCAT_TOKEN_(gtest_label_testthrow_, __LINE__): \
fail(gtest_msg.value)

Definition at line 1046 of file gtest-internal.h.

testing::TestInfo
Definition: gtest.h:621
testing::internal::AssertHelper
Definition: gtest.h:1723
testing::internal::HasNewFatalFailureHelper
Definition: gtest-test-part.h:161
testing::Message
Definition: gtest-message.h:85
testing::internal::MakeAndRegisterTestInfo
GTEST_API_ TestInfo * MakeAndRegisterTestInfo(const char *test_case_name, const char *name, const char *type_param, const char *value_param, TypeId fixture_class_id, SetUpTestCaseFunc set_up_tc, TearDownTestCaseFunc tear_down_tc, TestFactoryBase *factory)
Definition: gtest.cc:2219
testing::AssertionResult
Definition: gtest.h:256
testing::internal::AlwaysTrue
GTEST_API_ bool AlwaysTrue()
Definition: gtest.cc:4653
GTEST_ATTRIBUTE_UNUSED_
#define GTEST_ATTRIBUTE_UNUSED_
Definition: gtest-port.h:719
GTEST_TEST_CLASS_NAME_
#define GTEST_TEST_CLASS_NAME_(test_case_name, test_name)
Definition: gtest-internal.h:1132
testing::internal::GetBoolAssertionFailureMessage
GTEST_API_ std::string GetBoolAssertionFailureMessage(const AssertionResult &assertion_result, const char *expression_text, const char *actual_predicate_value, const char *expected_predicate_value)
Definition: gtest.cc:1026
testing::internal::HasNewFatalFailureHelper::has_new_fatal_failure
bool has_new_fatal_failure() const
Definition: gtest-test-part.h:167
line
static char * line
Definition: svm.cpp:2902
GTEST_CONCAT_TOKEN_
#define GTEST_CONCAT_TOKEN_(foo, bar)
Definition: gtest-internal.h:73
testing::internal::ConstCharPtr
Definition: gtest-internal.h:665


fcl
Author(s):
autogenerated on Fri Apr 2 2021 02:38:01