35 #ifndef GTEST_INCLUDE_GTEST_GTEST_PRED_IMPL_H_    36 #define GTEST_INCLUDE_GTEST_GTEST_PRED_IMPL_H_    39 #ifndef GTEST_INCLUDE_GTEST_GTEST_H_    40 # error Do not include gtest_pred_impl.h directly.  Include gtest.h instead.    41 #endif  // GTEST_INCLUDE_GTEST_GTEST_H_    75 #define GTEST_ASSERT_(expression, on_failure) \    76   GTEST_AMBIGUOUS_ELSE_BLOCKER_ \    77   if (const ::testing::AssertionResult gtest_ar = (expression)) \    80     on_failure(gtest_ar.failure_message())    85 template <
typename Pred,
    94                             << e1 << 
") evaluates to false, where"    95                             << 
"\n" << e1 << 
" evaluates to " << v1;
   100 #define GTEST_PRED_FORMAT1_(pred_format, v1, on_failure)\   101   GTEST_ASSERT_(pred_format(#v1, v1),\   106 #define GTEST_PRED1_(pred, v1, on_failure)\   107   GTEST_ASSERT_(::testing::AssertPred1Helper(#pred, \   113 #define EXPECT_PRED_FORMAT1(pred_format, v1) \   114   GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_NONFATAL_FAILURE_)   115 #define EXPECT_PRED1(pred, v1) \   116   GTEST_PRED1_(pred, v1, GTEST_NONFATAL_FAILURE_)   117 #define ASSERT_PRED_FORMAT1(pred_format, v1) \   118   GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)   119 #define ASSERT_PRED1(pred, v1) \   120   GTEST_PRED1_(pred, v1, GTEST_FATAL_FAILURE_)   126 template <
typename Pred,
   139                             << e2 << 
") evaluates to false, where"   140                             << 
"\n" << e1 << 
" evaluates to " << v1
   141                             << 
"\n" << e2 << 
" evaluates to " << v2;
   146 #define GTEST_PRED_FORMAT2_(pred_format, v1, v2, on_failure)\   147   GTEST_ASSERT_(pred_format(#v1, #v2, v1, v2),\   152 #define GTEST_PRED2_(pred, v1, v2, on_failure)\   153   GTEST_ASSERT_(::testing::AssertPred2Helper(#pred, \   161 #define EXPECT_PRED_FORMAT2(pred_format, v1, v2) \   162   GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_NONFATAL_FAILURE_)   163 #define EXPECT_PRED2(pred, v1, v2) \   164   GTEST_PRED2_(pred, v1, v2, GTEST_NONFATAL_FAILURE_)   165 #define ASSERT_PRED_FORMAT2(pred_format, v1, v2) \   166   GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_FATAL_FAILURE_)   167 #define ASSERT_PRED2(pred, v1, v2) \   168   GTEST_PRED2_(pred, v1, v2, GTEST_FATAL_FAILURE_)   174 template <
typename Pred,
   191                             << e3 << 
") evaluates to false, where"   192                             << 
"\n" << e1 << 
" evaluates to " << v1
   193                             << 
"\n" << e2 << 
" evaluates to " << v2
   194                             << 
"\n" << e3 << 
" evaluates to " << v3;
   199 #define GTEST_PRED_FORMAT3_(pred_format, v1, v2, v3, on_failure)\   200   GTEST_ASSERT_(pred_format(#v1, #v2, #v3, v1, v2, v3),\   205 #define GTEST_PRED3_(pred, v1, v2, v3, on_failure)\   206   GTEST_ASSERT_(::testing::AssertPred3Helper(#pred, \   216 #define EXPECT_PRED_FORMAT3(pred_format, v1, v2, v3) \   217   GTEST_PRED_FORMAT3_(pred_format, v1, v2, v3, GTEST_NONFATAL_FAILURE_)   218 #define EXPECT_PRED3(pred, v1, v2, v3) \   219   GTEST_PRED3_(pred, v1, v2, v3, GTEST_NONFATAL_FAILURE_)   220 #define ASSERT_PRED_FORMAT3(pred_format, v1, v2, v3) \   221   GTEST_PRED_FORMAT3_(pred_format, v1, v2, v3, GTEST_FATAL_FAILURE_)   222 #define ASSERT_PRED3(pred, v1, v2, v3) \   223   GTEST_PRED3_(pred, v1, v2, v3, GTEST_FATAL_FAILURE_)   229 template <
typename Pred,
   250                             << e4 << 
") evaluates to false, where"   251                             << 
"\n" << e1 << 
" evaluates to " << v1
   252                             << 
"\n" << e2 << 
" evaluates to " << v2
   253                             << 
"\n" << e3 << 
" evaluates to " << v3
   254                             << 
"\n" << e4 << 
" evaluates to " << v4;
   259 #define GTEST_PRED_FORMAT4_(pred_format, v1, v2, v3, v4, on_failure)\   260   GTEST_ASSERT_(pred_format(#v1, #v2, #v3, #v4, v1, v2, v3, v4),\   265 #define GTEST_PRED4_(pred, v1, v2, v3, v4, on_failure)\   266   GTEST_ASSERT_(::testing::AssertPred4Helper(#pred, \   278 #define EXPECT_PRED_FORMAT4(pred_format, v1, v2, v3, v4) \   279   GTEST_PRED_FORMAT4_(pred_format, v1, v2, v3, v4, GTEST_NONFATAL_FAILURE_)   280 #define EXPECT_PRED4(pred, v1, v2, v3, v4) \   281   GTEST_PRED4_(pred, v1, v2, v3, v4, GTEST_NONFATAL_FAILURE_)   282 #define ASSERT_PRED_FORMAT4(pred_format, v1, v2, v3, v4) \   283   GTEST_PRED_FORMAT4_(pred_format, v1, v2, v3, v4, GTEST_FATAL_FAILURE_)   284 #define ASSERT_PRED4(pred, v1, v2, v3, v4) \   285   GTEST_PRED4_(pred, v1, v2, v3, v4, GTEST_FATAL_FAILURE_)   291 template <
typename Pred,
   316                             << e5 << 
") evaluates to false, where"   317                             << 
"\n" << e1 << 
" evaluates to " << v1
   318                             << 
"\n" << e2 << 
" evaluates to " << v2
   319                             << 
"\n" << e3 << 
" evaluates to " << v3
   320                             << 
"\n" << e4 << 
" evaluates to " << v4
   321                             << 
"\n" << e5 << 
" evaluates to " << v5;
   326 #define GTEST_PRED_FORMAT5_(pred_format, v1, v2, v3, v4, v5, on_failure)\   327   GTEST_ASSERT_(pred_format(#v1, #v2, #v3, #v4, #v5, v1, v2, v3, v4, v5),\   332 #define GTEST_PRED5_(pred, v1, v2, v3, v4, v5, on_failure)\   333   GTEST_ASSERT_(::testing::AssertPred5Helper(#pred, \   347 #define EXPECT_PRED_FORMAT5(pred_format, v1, v2, v3, v4, v5) \   348   GTEST_PRED_FORMAT5_(pred_format, v1, v2, v3, v4, v5, GTEST_NONFATAL_FAILURE_)   349 #define EXPECT_PRED5(pred, v1, v2, v3, v4, v5) \   350   GTEST_PRED5_(pred, v1, v2, v3, v4, v5, GTEST_NONFATAL_FAILURE_)   351 #define ASSERT_PRED_FORMAT5(pred_format, v1, v2, v3, v4, v5) \   352   GTEST_PRED_FORMAT5_(pred_format, v1, v2, v3, v4, v5, GTEST_FATAL_FAILURE_)   353 #define ASSERT_PRED5(pred, v1, v2, v3, v4, v5) \   354   GTEST_PRED5_(pred, v1, v2, v3, v4, v5, GTEST_FATAL_FAILURE_)   358 #endif  // GTEST_INCLUDE_GTEST_GTEST_PRED_IMPL_H_ GTEST_API_ AssertionResult AssertionFailure()
Definition: gtest.cc:971
 
AssertionResult AssertPred5Helper(const char *pred_text, const char *e1, const char *e2, const char *e3, const char *e4, const char *e5, Pred pred, const T1 &v1, const T2 &v2, const T3 &v3, const T4 &v4, const T5 &v5)
Definition: gtest_pred_impl.h:297
 
AssertionResult AssertPred2Helper(const char *pred_text, const char *e1, const char *e2, Pred pred, const T1 &v1, const T2 &v2)
Definition: gtest_pred_impl.h:129
 
GTEST_API_ AssertionResult AssertionSuccess()
Definition: gtest.cc:966
 
AssertionResult AssertPred4Helper(const char *pred_text, const char *e1, const char *e2, const char *e3, const char *e4, Pred pred, const T1 &v1, const T2 &v2, const T3 &v3, const T4 &v4)
Definition: gtest_pred_impl.h:234
 
AssertionResult AssertPred3Helper(const char *pred_text, const char *e1, const char *e2, const char *e3, Pred pred, const T1 &v1, const T2 &v2, const T3 &v3)
Definition: gtest_pred_impl.h:178
 
AssertionResult AssertPred1Helper(const char *pred_text, const char *e1, Pred pred, const T1 &v1)
Definition: gtest_pred_impl.h:87