37 #ifndef GTEST_INCLUDE_GTEST_INTERNAL_GTEST_INTERNAL_H_ 38 #define GTEST_INCLUDE_GTEST_INTERNAL_GTEST_INTERNAL_H_ 44 # include <sys/types.h> 45 # include <sys/wait.h> 47 #endif // GTEST_OS_LINUX 49 #if GTEST_HAS_EXCEPTIONS 61 #include <type_traits> 77 #define GTEST_CONCAT_TOKEN_(foo, bar) GTEST_CONCAT_TOKEN_IMPL_(foo, bar) 78 #define GTEST_CONCAT_TOKEN_IMPL_(foo, bar) foo ## bar 81 #define GTEST_STRINGIFY_(name) #name 83 namespace proto2 {
class Message; }
89 class AssertionResult;
120 template <
typename T,
128 const std::string& gtest_msg,
const Message& user_msg);
130 #if GTEST_HAS_EXCEPTIONS 141 class GTEST_API_ GoogleTestFailureException :
public ::std::runtime_error {
143 explicit GoogleTestFailureException(
const TestPartResult& failure);
148 #endif // GTEST_HAS_EXCEPTIONS 150 namespace edit_distance {
158 const std::vector<size_t>& left,
const std::vector<size_t>& right);
162 const std::vector<std::string>& left,
163 const std::vector<std::string>& right);
167 const std::vector<std::string>& right,
177 const std::string& right,
178 size_t* total_line_count);
196 const char* actual_expression,
197 const std::string& expected_value,
198 const std::string& actual_value,
203 const AssertionResult& assertion_result,
204 const char* expression_text,
205 const char* actual_predicate_value,
206 const char* expected_predicate_value);
237 template <
typename RawType>
247 static const size_t kBitCount = 8*
sizeof(RawType);
250 static const size_t kFractionBitCount =
251 std::numeric_limits<RawType>::digits - 1;
254 static const size_t kExponentBitCount = kBitCount - 1 - kFractionBitCount;
257 static const Bits kSignBitMask =
static_cast<Bits
>(1) << (kBitCount - 1);
260 static const Bits kFractionBitMask =
261 ~static_cast<Bits>(0) >> (kExponentBitCount + 1);
264 static const Bits kExponentBitMask = ~(kSignBitMask | kFractionBitMask);
278 static const size_t kMaxUlps = 4;
301 return ReinterpretBits(kExponentBitMask);
305 static RawType Max();
310 const Bits &
bits()
const {
return u_.bits_; }
319 Bits
sign_bit()
const {
return kSignBitMask & u_.bits_; }
325 return (exponent_bits() == kExponentBitMask) && (fraction_bits() != 0);
337 if (is_nan() || rhs.
is_nan())
return false;
339 return DistanceBetweenSignAndMagnitudeNumbers(u_.bits_, rhs.u_.bits_)
345 union FloatingPointUnion {
365 static Bits SignAndMagnitudeToBiased(
const Bits &sam) {
366 if (kSignBitMask & sam) {
371 return kSignBitMask | sam;
377 static Bits DistanceBetweenSignAndMagnitudeNumbers(
const Bits &sam1,
379 const Bits biased1 = SignAndMagnitudeToBiased(sam1);
380 const Bits biased2 = SignAndMagnitudeToBiased(sam2);
381 return (biased1 >= biased2) ? (biased1 - biased2) : (biased2 - biased1);
384 FloatingPointUnion u_;
407 template <
typename T>
416 template <
typename T>
422 template <
typename T>
428 return &(TypeIdHelper<T>::dummy_);
446 virtual Test* CreateTest() = 0;
457 template <
class TestClass>
469 GTEST_API_ AssertionResult IsHRESULTSuccess(
const char* expr,
471 GTEST_API_ AssertionResult IsHRESULTFailure(
const char* expr,
474 #endif // GTEST_OS_WINDOWS 482 : file(a_file), line(a_line) {}
496 return a == def ?
nullptr : a;
499 template <
typename T>
517 <<
"Test can not provide both SetUpTestSuite and SetUpTestCase, please " 518 "make sure there is only one present at " 519 << filename <<
":" << line_num;
521 return test_case_fp !=
nullptr ? test_case_fp : test_suite_fp;
532 <<
"Test can not provide both TearDownTestSuite and TearDownTestCase," 533 " please make sure there is only one present at" 534 << filename <<
":" << line_num;
536 return test_case_fp !=
nullptr ? test_case_fp : test_suite_fp;
559 const char* test_suite_name,
const char* name,
const char* type_param,
569 #if GTEST_HAS_TYPED_TEST || GTEST_HAS_TYPED_TEST_P 577 TypedTestSuitePState() : registered_(
false) {}
582 bool AddTestName(
const char* file,
int line,
const char* case_name,
583 const char* test_name) {
586 "%s Test %s must be defined before " 587 "REGISTER_TYPED_TEST_SUITE_P(%s, ...).\n",
592 registered_tests_.insert(
597 bool TestExists(
const std::string& test_name)
const {
598 return registered_tests_.count(test_name) > 0;
601 const CodeLocation& GetCodeLocation(
const std::string& test_name)
const {
602 RegisteredTestsMap::const_iterator it = registered_tests_.find(test_name);
610 const char* VerifyRegisteredTestNames(
611 const char* file,
int line,
const char* registered_tests);
614 typedef ::std::map<std::string, CodeLocation> RegisteredTestsMap;
617 RegisteredTestsMap registered_tests_;
621 #ifndef GTEST_REMOVE_LEGACY_TEST_CASEAPI_ 622 using TypedTestCasePState = TypedTestSuitePState;
623 #endif // GTEST_REMOVE_LEGACY_TEST_CASEAPI_ 629 inline const char* SkipComma(
const char* str) {
630 const char* comma = strchr(str,
',');
631 if (comma ==
nullptr) {
640 inline std::string GetPrefixUntilComma(
const char* str) {
641 const char* comma = strchr(str,
',');
642 return comma ==
nullptr ? str : std::string(str, comma);
647 void SplitString(const ::std::string& str,
char delimiter,
648 ::std::vector< ::std::string>*
dest);
652 struct DefaultNameGenerator {
653 template <
typename T>
654 static std::string GetName(
int i) {
659 template <
typename Prov
ided = DefaultNameGenerator>
660 struct NameGeneratorSelector {
661 typedef Provided
type;
664 template <
typename NameGenerator>
665 void GenerateNamesRecursively(Types0, std::vector<std::string>*,
int) {}
667 template <
typename NameGenerator,
typename Types>
668 void GenerateNamesRecursively(Types, std::vector<std::string>* result,
int i) {
669 result->push_back(NameGenerator::template GetName<typename Types::Head>(i));
670 GenerateNamesRecursively<NameGenerator>(
typename Types::Tail(), result,
674 template <
typename NameGenerator,
typename Types>
675 std::vector<std::string> GenerateNames() {
676 std::vector<std::string> result;
677 GenerateNamesRecursively<NameGenerator>(Types(), &result, 0);
688 template <GTEST_TEMPLATE_ Fixture,
class TestSel,
typename Types>
689 class TypeParameterizedTest {
695 static bool Register(
const char* prefix,
const CodeLocation& code_location,
696 const char* case_name,
const char* test_names,
int index,
697 const std::vector<std::string>& type_names =
698 GenerateNames<DefaultNameGenerator, Types>()) {
699 typedef typename Types::Head Type;
701 typedef typename GTEST_BIND_(TestSel, Type) TestClass;
706 (std::string(prefix) + (prefix[0] ==
'\0' ?
"" :
"/") + case_name +
707 "/" + type_names[static_cast<size_t>(index)])
710 GetTypeName<Type>().c_str(),
712 code_location, GetTypeId<FixtureClass>(),
714 code_location.
file.c_str(), code_location.
line),
716 code_location.
file.c_str(), code_location.
line),
720 return TypeParameterizedTest<
Fixture, TestSel,
721 typename Types::Tail>::Register(prefix,
731 template <GTEST_TEMPLATE_ Fixture,
class TestSel>
732 class TypeParameterizedTest<Fixture, TestSel, Types0> {
735 const char* ,
const char* ,
737 const std::vector<std::string>& =
738 std::vector<std::string>() ) {
747 template <GTEST_TEMPLATE_ Fixture,
typename Tests,
typename Types>
748 class TypeParameterizedTestSuite {
750 static bool Register(
const char* prefix,
CodeLocation code_location,
751 const TypedTestSuitePState* state,
const char* case_name,
752 const char* test_names,
753 const std::vector<std::string>& type_names =
754 GenerateNames<DefaultNameGenerator, Types>()) {
756 GetPrefixUntilComma(test_names));
757 if (!state->TestExists(test_name)) {
758 fprintf(stderr,
"Failed to get code location for test %s.%s at %s.",
759 case_name, test_name.c_str(),
761 code_location.
line).c_str());
765 const CodeLocation& test_location = state->GetCodeLocation(test_name);
767 typedef typename Tests::Head Head;
770 TypeParameterizedTest<Fixture, Head, Types>::Register(
771 prefix, test_location, case_name, test_names, 0, type_names);
774 return TypeParameterizedTestSuite<Fixture,
typename Tests::Tail,
775 Types>::Register(prefix, code_location,
777 SkipComma(test_names),
783 template <GTEST_TEMPLATE_ Fixture,
typename Types>
784 class TypeParameterizedTestSuite<Fixture, Templates0, Types> {
787 const TypedTestSuitePState* ,
788 const char* ,
const char* ,
789 const std::vector<std::string>& =
790 std::vector<std::string>() ) {
795 #endif // GTEST_HAS_TYPED_TEST || GTEST_HAS_TYPED_TEST_P 808 UnitTest* unit_test,
int skip_count);
824 operator bool()
const {
return true; }
852 template <
typename T1,
typename T2>
855 template <
typename T>
862 template <
typename T>
864 template <
typename T>
869 #define GTEST_REMOVE_REFERENCE_(T) \ 870 typename ::testing::internal::RemoveReference<T>::type 875 template <
typename T>
877 template <
typename T>
883 template <
typename T,
size_t N>
890 #define GTEST_REMOVE_CONST_(T) \ 891 typename ::testing::internal::RemoveConst<T>::type 894 #define GTEST_REMOVE_REFERENCE_AND_CONST_(T) \ 895 GTEST_REMOVE_CONST_(GTEST_REMOVE_REFERENCE_(T)) 899 template <
typename T>
902 std::is_convertible<const T*, const ::proto2::Message*>::value> {
931 class Iterator = decltype(::std::declval<const C&>().begin()),
932 class = decltype(::std::declval<const C&>().end()),
933 class = decltype(++::std::declval<Iterator&>()),
934 class = decltype(*::std::declval<Iterator>()),
935 class =
typename C::const_iterator>
948 template <
typename T>
951 template <
typename U>
952 static char test(
typename U::hasher*,
typename U::reverse_iterator*);
953 template <
typename U>
954 static int test(
typename U::hasher*, ...);
955 template <
typename U>
956 static char test(...);
959 static const bool value =
sizeof(test<T>(
nullptr,
nullptr)) ==
sizeof(int);
962 template <
typename T>
965 template <
typename C,
966 bool =
sizeof(IsContainerTest<C>(0)) ==
sizeof(
IsContainer)>
969 template <
typename C>
976 template <
typename C>
978 using value_type = decltype(*std::declval<typename C::const_iterator>());
980 is_same<
typename std::remove_const<
991 template <
typename C>
1007 template <
typename T,
typename U>
1008 bool ArrayEq(
const T* lhs,
size_t size,
const U* rhs);
1011 template <
typename T,
typename U>
1012 inline bool ArrayEq(
const T& lhs,
const U& rhs) {
return lhs == rhs; }
1015 template <
typename T,
typename U,
size_t N>
1016 inline bool ArrayEq(
const T(&lhs)[N],
const U(&rhs)[N]) {
1023 template <
typename T,
typename U>
1024 bool ArrayEq(
const T* lhs,
size_t size,
const U* rhs) {
1025 for (
size_t i = 0; i != size; i++) {
1034 template <
typename Iter,
typename Element>
1036 for (
Iter it = begin; it != end; ++it) {
1047 template <
typename T,
typename U>
1048 void CopyArray(
const T* from,
size_t size, U* to);
1051 template <
typename T,
typename U>
1055 template <
typename T,
typename U,
size_t N>
1063 template <
typename T,
typename U>
1065 for (
size_t i = 0; i != size; i++) {
1085 template <
typename Element>
1095 InitRef(array, count);
1100 InitCopy(array, count);
1105 (this->*rhs.clone_)(rhs.array_, rhs.size_);
1109 if (clone_ != &NativeArray::InitRef)
1114 size_t size()
const {
return size_; }
1115 const_iterator
begin()
const {
return array_; }
1116 const_iterator
end()
const {
return array_ + size_; }
1118 return size() == rhs.
size() &&
1129 void InitCopy(
const Element* array,
size_t a_size) {
1130 Element*
const copy =
new Element[a_size];
1134 clone_ = &NativeArray::InitCopy;
1138 void InitRef(
const Element* array,
size_t a_size) {
1141 clone_ = &NativeArray::InitRef;
1144 const Element* array_;
1146 void (
NativeArray::*clone_)(
const Element*, size_t);
1152 template <
size_t... Is>
1158 template <
bool plus_one,
typename T,
size_t sizeofT>
1160 template <
size_t... I,
size_t sizeofT>
1164 template <
size_t... I,
size_t sizeofT>
1173 :
DoubleSequence<N % 2 == 1, typename MakeIndexSequence<N / 2>::type,
1182 template <
typename T,
size_t,
size_t>
1185 template <
typename T,
size_t I>
1192 template <
size_t N,
typename I,
typename... T>
1195 template <
size_t N,
size_t... I,
typename... T>
1199 template <
typename... T>
1202 template <
typename Derived,
size_t I>
1205 template <
typename... T,
size_t I>
1215 template <
typename Derived,
typename Idx>
1218 template <
size_t... Idx,
typename... T>
1236 template <
typename... T>
1239 typename MakeIndexSequence<sizeof...(T)>::type> {
1240 using Indices =
typename FlatTuple::FlatTupleBase::Indices;
1260 "INSTANTIATE_TEST_CASE_P is deprecated, please use " 1261 "INSTANTIATE_TEST_SUITE_P")
1262 constexpr
bool InstantiateTestCase_P_IsDeprecated() {
return true; }
1265 "TYPED_TEST_CASE_P is deprecated, please use " 1266 "TYPED_TEST_SUITE_P")
1267 constexpr
bool TypedTestCase_P_IsDeprecated() {
return true; }
1270 "TYPED_TEST_CASE is deprecated, please use " 1272 constexpr
bool TypedTestCaseIsDeprecated() {
return true; }
1275 "REGISTER_TYPED_TEST_CASE_P is deprecated, please use " 1276 "REGISTER_TYPED_TEST_SUITE_P")
1277 constexpr
bool RegisterTypedTestCase_P_IsDeprecated() {
return true; }
1280 "INSTANTIATE_TYPED_TEST_CASE_P is deprecated, please use " 1281 "INSTANTIATE_TYPED_TEST_SUITE_P")
1282 constexpr
bool InstantiateTypedTestCase_P_IsDeprecated() {
return true; }
1287 #define GTEST_MESSAGE_AT_(file, line, message, result_type) \ 1288 ::testing::internal::AssertHelper(result_type, file, line, message) \ 1289 = ::testing::Message() 1291 #define GTEST_MESSAGE_(message, result_type) \ 1292 GTEST_MESSAGE_AT_(__FILE__, __LINE__, message, result_type) 1294 #define GTEST_FATAL_FAILURE_(message) \ 1295 return GTEST_MESSAGE_(message, ::testing::TestPartResult::kFatalFailure) 1297 #define GTEST_NONFATAL_FAILURE_(message) \ 1298 GTEST_MESSAGE_(message, ::testing::TestPartResult::kNonFatalFailure) 1300 #define GTEST_SUCCESS_(message) \ 1301 GTEST_MESSAGE_(message, ::testing::TestPartResult::kSuccess) 1303 #define GTEST_SKIP_(message) \ 1304 return GTEST_MESSAGE_(message, ::testing::TestPartResult::kSkip) 1309 #define GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_(statement) \ 1310 if (::testing::internal::AlwaysTrue()) { statement; } 1312 #define GTEST_TEST_THROW_(statement, expected_exception, fail) \ 1313 GTEST_AMBIGUOUS_ELSE_BLOCKER_ \ 1314 if (::testing::internal::ConstCharPtr gtest_msg = "") { \ 1315 bool gtest_caught_expected = false; \ 1317 GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_(statement); \ 1319 catch (expected_exception const&) { \ 1320 gtest_caught_expected = true; \ 1324 "Expected: " #statement " throws an exception of type " \ 1325 #expected_exception ".\n Actual: it throws a different type."; \ 1326 goto GTEST_CONCAT_TOKEN_(gtest_label_testthrow_, __LINE__); \ 1328 if (!gtest_caught_expected) { \ 1330 "Expected: " #statement " throws an exception of type " \ 1331 #expected_exception ".\n Actual: it throws nothing."; \ 1332 goto GTEST_CONCAT_TOKEN_(gtest_label_testthrow_, __LINE__); \ 1335 GTEST_CONCAT_TOKEN_(gtest_label_testthrow_, __LINE__): \ 1336 fail(gtest_msg.value) 1338 #define GTEST_TEST_NO_THROW_(statement, fail) \ 1339 GTEST_AMBIGUOUS_ELSE_BLOCKER_ \ 1340 if (::testing::internal::AlwaysTrue()) { \ 1342 GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_(statement); \ 1345 goto GTEST_CONCAT_TOKEN_(gtest_label_testnothrow_, __LINE__); \ 1348 GTEST_CONCAT_TOKEN_(gtest_label_testnothrow_, __LINE__): \ 1349 fail("Expected: " #statement " doesn't throw an exception.\n" \ 1350 " Actual: it throws.") 1352 #define GTEST_TEST_ANY_THROW_(statement, fail) \ 1353 GTEST_AMBIGUOUS_ELSE_BLOCKER_ \ 1354 if (::testing::internal::AlwaysTrue()) { \ 1355 bool gtest_caught_any = false; \ 1357 GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_(statement); \ 1360 gtest_caught_any = true; \ 1362 if (!gtest_caught_any) { \ 1363 goto GTEST_CONCAT_TOKEN_(gtest_label_testanythrow_, __LINE__); \ 1366 GTEST_CONCAT_TOKEN_(gtest_label_testanythrow_, __LINE__): \ 1367 fail("Expected: " #statement " throws an exception.\n" \ 1368 " Actual: it doesn't.") 1374 #define GTEST_TEST_BOOLEAN_(expression, text, actual, expected, fail) \ 1375 GTEST_AMBIGUOUS_ELSE_BLOCKER_ \ 1376 if (const ::testing::AssertionResult gtest_ar_ = \ 1377 ::testing::AssertionResult(expression)) \ 1380 fail(::testing::internal::GetBoolAssertionFailureMessage(\ 1381 gtest_ar_, text, #actual, #expected).c_str()) 1383 #define GTEST_TEST_NO_FATAL_FAILURE_(statement, fail) \ 1384 GTEST_AMBIGUOUS_ELSE_BLOCKER_ \ 1385 if (::testing::internal::AlwaysTrue()) { \ 1386 ::testing::internal::HasNewFatalFailureHelper gtest_fatal_failure_checker; \ 1387 GTEST_SUPPRESS_UNREACHABLE_CODE_WARNING_BELOW_(statement); \ 1388 if (gtest_fatal_failure_checker.has_new_fatal_failure()) { \ 1389 goto GTEST_CONCAT_TOKEN_(gtest_label_testnofatal_, __LINE__); \ 1392 GTEST_CONCAT_TOKEN_(gtest_label_testnofatal_, __LINE__): \ 1393 fail("Expected: " #statement " doesn't generate new fatal " \ 1394 "failures in the current thread.\n" \ 1395 " Actual: it does.") 1398 #define GTEST_TEST_CLASS_NAME_(test_suite_name, test_name) \ 1399 test_suite_name##_##test_name##_Test 1402 #define GTEST_TEST_(test_suite_name, test_name, parent_class, parent_id) \ 1403 class GTEST_TEST_CLASS_NAME_(test_suite_name, test_name) \ 1404 : public parent_class { \ 1406 GTEST_TEST_CLASS_NAME_(test_suite_name, test_name)() {} \ 1409 virtual void TestBody(); \ 1410 static ::testing::TestInfo* const test_info_ GTEST_ATTRIBUTE_UNUSED_; \ 1411 GTEST_DISALLOW_COPY_AND_ASSIGN_(GTEST_TEST_CLASS_NAME_(test_suite_name, \ 1415 ::testing::TestInfo* const GTEST_TEST_CLASS_NAME_(test_suite_name, \ 1416 test_name)::test_info_ = \ 1417 ::testing::internal::MakeAndRegisterTestInfo( \ 1418 #test_suite_name, #test_name, nullptr, nullptr, \ 1419 ::testing::internal::CodeLocation(__FILE__, __LINE__), (parent_id), \ 1420 ::testing::internal::SuiteApiResolver< \ 1421 parent_class>::GetSetUpCaseOrSuite(__FILE__, __LINE__), \ 1422 ::testing::internal::SuiteApiResolver< \ 1423 parent_class>::GetTearDownCaseOrSuite(__FILE__, __LINE__), \ 1424 new ::testing::internal::TestFactoryImpl<GTEST_TEST_CLASS_NAME_( \ 1425 test_suite_name, test_name)>); \ 1426 void GTEST_TEST_CLASS_NAME_(test_suite_name, test_name)::TestBody() 1428 #endif // GTEST_INCLUDE_GTEST_INTERNAL_GTEST_INTERNAL_H_
Element * iterator
Definition: gtest-internal.h:1090
TypeId GetTypeId()
Definition: gtest-internal.h:423
bool operator==(const NativeArray &rhs) const
Definition: gtest-internal.h:1117
const char * value
Definition: gtest-internal.h:825
CodeLocation(const std::string &a_file, int a_line)
Definition: gtest-internal.h:481
static SetUpTearDownSuiteFuncType GetTearDownCaseOrSuite(const char *filename, int line_num)
Definition: gtest-internal.h:524
Definition: gmock-actions.h:59
T type
Definition: gtest-internal.h:878
Definition: gtest-internal.h:1086
GTEST_API_ std::string GetCurrentOsStackTraceExceptTop(UnitTest *unit_test, int skip_count)
Definition: gtest.cc:5640
Bits exponent_bits() const
Definition: gtest-internal.h:313
Definition: gtest-internal.h:967
int * count
Definition: gmock_stress_test.cc:96
virtual ~TestFactoryBase()
Definition: gtest-internal.h:442
static RawType Infinity()
Definition: gtest-internal.h:300
Definition: gtest_skip_test.cc:42
T type
Definition: gtest-internal.h:863
Definition: gtest-internal.h:822
T type
Definition: gtest-internal.h:865
#define GTEST_DISABLE_MSC_WARNINGS_POP_()
Definition: gtest-port.h:314
int IsContainer
Definition: gtest-internal.h:929
static RawType ReinterpretBits(const Bits bits)
Definition: gtest-internal.h:293
::std::string PrintToString(const T &value)
Definition: gtest-printers.h:914
Definition: gtest-internal.h:156
ct::core::ControlVector< control_dim > u
typename std::conditional< sizeof(T)!=0,::testing::Test, void >::type Test
Definition: gtest-internal.h:507
Bits sign_bit() const
Definition: gtest-internal.h:319
IsNotContainer IsContainerTest(long)
Definition: gtest-internal.h:942
const Element * const_iterator
Definition: gtest-internal.h:1091
GTEST_API_::std::string FormatFileLocation(const char *file, int line)
Definition: gtest-port.cc:1018
Definition: gtest-internal.h:503
Definition: gtest-internal.h:156
FloatingPoint(const RawType &x)
Definition: gtest-internal.h:286
IgnoredValue(const T &)
Definition: gtest-internal.h:123
Definition: gtest-internal.h:863
NativeArray(const Element *array, size_t count, RelationToSourceReference)
Definition: gtest-internal.h:1094
void SplitString(const ::std::string &str, char delimiter,::std::vector< ::std::string > *dest)
Definition: gtest.cc:946
dest
Definition: upload.py:394
Definition: gtest-internal.h:833
T type
Definition: gtest-internal.h:876
const_iterator begin() const
Definition: gtest-internal.h:1115
GTEST_API_ bool SkipPrefix(const char *prefix, const char **pstr)
Definition: gtest.cc:5668
FlatTupleElemBase(value_type t)
Definition: gtest-internal.h:1211
Definition: gtest-port.h:2183
Definition: gtest-internal.h:1193
Definition: gtest-internal.h:458
T type
Definition: gtest-internal.h:1187
FlatTupleBase(T...t)
Definition: gtest-internal.h:1223
EditType
Definition: gtest-internal.h:156
#define GTEST_API_
Definition: gtest-port.h:759
Definition: gtest-internal.h:853
int i
Definition: gmock-matchers_test.cc:711
clear all close all load ct GNMSLog0 mat reformat t
Definition: gtest-internal.h:156
Element value_type
Definition: gtest-internal.h:1089
void(*)( TearDownTestSuiteFunc)
Definition: gtest-internal.h:478
Definition: gtest-message.h:90
void test()
Definition: SensitivityIntegratorTest.cpp:66
usr bin c fPIC pthread std
Definition: link.txt:1
Definition: gtest-internal.h:440
GTEST_API_ std::vector< EditType > CalculateOptimalEdits(const std::vector< std::string > &left, const std::vector< std::string > &right)
Definition: gtest.cc:1117
#define GTEST_DISALLOW_ASSIGN_(type)
Definition: gtest-port.h:683
std::string StreamableToString(const T &streamable)
Definition: gtest-message.h:209
Definition: gtest-internal.h:977
TypeWithSize< 4 >::UInt UInt32
Definition: gtest-port.h:2217
void(*)( SetUpTearDownSuiteFuncType)
Definition: gtest-internal.h:492
typename ElemFromList< I, typename MakeIndexSequence< sizeof...(T)>::type, T... >::type value_type
Definition: gtest-internal.h:1209
const void * TypeId
Definition: gtest-internal.h:405
Definition: gtest-internal.h:480
bool IsSpace(char ch)
Definition: gtest-port.h:1986
GTEST_API_ TypeId GetTestTypeId()
Definition: gtest.cc:648
Definition: gtest-internal.h:1216
void CopyArray(const T(&from)[N], U(*to)[N])
Definition: gtest-internal.h:1056
FloatingPoint< float > Float
Definition: gtest-internal.h:396
FloatingPoint< double > Double
Definition: gtest-internal.h:397
Definition: gtest-internal.h:998
#define GTEST_DISABLE_MSC_WARNINGS_PUSH_(warnings)
Definition: gtest-port.h:313
GTEST_API_ TestInfo * MakeAndRegisterTestInfo(const char *test_suite_name, const char *name, const char *type_param, const char *value_param, CodeLocation code_location, TypeId fixture_class_id, SetUpTestSuiteFunc set_up_tc, TearDownTestSuiteFunc tear_down_tc, TestFactoryBase *factory)
Definition: gtest.cc:2595
#define GTEST_CHECK_(condition)
Definition: gtest-port.h:1014
void Reseed(UInt32 seed)
Definition: gtest-internal.h:839
Test * CreateTest() override
Definition: gtest-internal.h:460
Definition: gtest-internal.h:949
def Iter(n, format, sep='')
Definition: gen_gtest_pred_impl.py:188
GTEST_API_ bool AlwaysTrue()
Definition: gtest.cc:5655
bool AlwaysFalse()
Definition: gtest-internal.h:817
int line
Definition: gtest-internal.h:485
bool AlmostEquals(const FloatingPoint &rhs) const
Definition: gtest-internal.h:334
NativeArray(const Element *array, size_t count, RelationToSourceCopy)
Definition: gtest-internal.h:1099
NativeArray(const NativeArray &rhs)
Definition: gtest-internal.h:1104
Definition: gtest-port.h:865
SetUpTearDownSuiteFuncType GetNotDefaultOrNull(SetUpTearDownSuiteFuncType a, SetUpTearDownSuiteFuncType def)
Definition: gtest-internal.h:494
void type
Definition: gtest-internal.h:999
Definition: gtest-internal.h:1172
Definition: gtest-internal.h:1159
ElemFromList< I, Indices, T... >::type & Get()
Definition: gtest-internal.h:1252
Definition: gtest-internal.h:1153
Definition: gtest-internal.h:156
Definition: gtest-port.h:1925
Definition: gmock-internal-utils_test.cc:60
GTEST_API_ const char kStackTraceMarker[]
Definition: gtest.cc:178
Definition: gtest-internal.h:238
GTEST_API_ std::string AppendUserMessage(const std::string >est_msg, const Message &user_msg)
Definition: gtest.cc:2018
int value
Definition: gmock-matchers_test.cc:657
Definition: gtest-internal.h:970
Definition: gtest-internal.h:1074
char IsNotContainer
Definition: gtest-internal.h:940
Bits fraction_bits() const
Definition: gtest-internal.h:316
int x
Definition: gmock-matchers_test.cc:3610
#define GTEST_INTERNAL_DEPRECATED(message)
Definition: gtest-port.h:2289
Definition: gtest-port.h:1935
GTEST_API_ std::string DiffStrings(const std::string &left, const std::string &right, size_t *total_line_count)
TestFactoryBase()
Definition: gtest-internal.h:449
GTEST_API_ AssertionResult EqFailure(const char *expected_expression, const char *actual_expression, const std::string &expected_value, const std::string &actual_value, bool ignoring_case)
Definition: gtest.cc:1326
const Bits & bits() const
Definition: gtest-internal.h:310
type
Definition: upload.py:443
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:1361
GTEST_API_ std::string CreateUnifiedDiff(const std::vector< std::string > &left, const std::vector< std::string > &right, size_t context=2)
Definition: gtest.cc:1216
static SetUpTearDownSuiteFuncType GetSetUpCaseOrSuite(const char *filename, int line_num)
Definition: gtest-internal.h:509
void Abort()
Definition: gtest-port.h:2133
TypeWithSize< sizeof(RawType)>::UInt Bits
Definition: gtest-internal.h:242
const
Definition: upload.py:398
Definition: gtest-internal.h:900
Definition: gtest-internal.h:1075
const_iterator end() const
Definition: gtest-internal.h:1116
#define GTEST_DISALLOW_COPY_AND_ASSIGN_(type)
Definition: gtest-port.h:688
FlatTuple(T...t)
Definition: gtest-internal.h:1244
ConstCharPtr(const char *str)
Definition: gtest-internal.h:823
Definition: gtest-internal.h:408
void(*)( SetUpTestSuiteFunc)
Definition: gtest-internal.h:477
Iter ArrayAwareFind(Iter begin, Iter end, const Element &elem)
Definition: gtest-internal.h:1035
Random(UInt32 seed)
Definition: gtest-internal.h:837
Definition: gtest-internal.h:1200
Definition: gtest-internal.h:992
decltype(*std::declval< typename C::const_iterator >()) value_type
Definition: gtest-internal.h:978
const ElemFromList< I, Indices, T... >::type & Get() const
Definition: gtest-internal.h:1247
bool ArrayEq(const T(&lhs)[N], const U(&rhs)[N])
Definition: gtest-internal.h:1016
size_t size() const
Definition: gtest-internal.h:1114
std::string StripTrailingSpaces(std::string str)
Definition: gtest-port.h:2007
static bool dummy_
Definition: gtest-internal.h:413
#define GTEST_REMOVE_REFERENCE_AND_CONST_(T)
Definition: gtest-internal.h:894
Definition: gtest-internal.h:876
Definition: gtest-internal.h:1203
~NativeArray()
Definition: gtest-internal.h:1108
Definition: gtest-internal.h:1183
value_type value
Definition: gtest-internal.h:1212
bool is_nan() const
Definition: gtest-internal.h:322
std::string file
Definition: gtest-internal.h:484
Definition: gtest-internal.h:110