Skip to content

Commit

Permalink
Merge 45aa8f8 into cac7583
Browse files Browse the repository at this point in the history
  • Loading branch information
srz-zumix committed Jun 19, 2019
2 parents cac7583 + 45aa8f8 commit e1b8ac7
Show file tree
Hide file tree
Showing 16 changed files with 444 additions and 168 deletions.
28 changes: 16 additions & 12 deletions include/gtest/switch/iutest_switch_assert.hpp
Expand Up @@ -60,15 +60,15 @@

//======================================================================
// define
#define ASSERT_TRUE IUTEST_ASSERT_TRUE
#define ASSERT_FALSE IUTEST_ASSERT_FALSE
#define ASSERT_EQ IUTEST_ASSERT_EQ
#define ASSERT_NE IUTEST_ASSERT_NE
#define ASSERT_LT IUTEST_ASSERT_LT
#define ASSERT_LE IUTEST_ASSERT_LE
#define ASSERT_GT IUTEST_ASSERT_GT
#define ASSERT_GE IUTEST_ASSERT_GE
#define ASSERT_NEAR IUTEST_ASSERT_NEAR
#define ASSERT_TRUE IUTEST_ASSERT_TRUE
#define ASSERT_FALSE IUTEST_ASSERT_FALSE
#define ASSERT_EQ IUTEST_ASSERT_EQ
#define ASSERT_NE IUTEST_ASSERT_NE
#define ASSERT_LT IUTEST_ASSERT_LT
#define ASSERT_LE IUTEST_ASSERT_LE
#define ASSERT_GT IUTEST_ASSERT_GT
#define ASSERT_GE IUTEST_ASSERT_GE
#define ASSERT_NEAR IUTEST_ASSERT_NEAR
#define ASSERT_FLOAT_EQ IUTEST_ASSERT_FLOAT_EQ
#define ASSERT_DOUBLE_EQ IUTEST_ASSERT_DOUBLE_EQ
#define ASSERT_STREQ IUTEST_ASSERT_STREQ
Expand Down Expand Up @@ -113,6 +113,7 @@
#undef IUTEST_ASSERT_TRUE
#undef IUTEST_ASSERT_FALSE
#undef IUTEST_ASSERT_EQ
#undef IUTEST_ASSERT_ALMOST_EQ
#undef IUTEST_ASSERT_NE
#undef IUTEST_ASSERT_LT
#undef IUTEST_ASSERT_LE
Expand Down Expand Up @@ -161,6 +162,8 @@
#define IUTEST_ASSERT_TRUE(...) ASSERT_TRUE(!!(__VA_ARGS__))
#define IUTEST_ASSERT_FALSE(...) ASSERT_FALSE((__VA_ARGS__))
#define IUTEST_ASSERT_EQ ASSERT_EQ
#define IUTEST_ASSERT_ALMOST_EQ(expected, actual) \
ASSERT_PRED_FORMAT2( ::testing::internal::backward::AlmostEqHelper<IUTEST_IS_NULLLITERAL(expected)>::Compare, expected, actual)
#define IUTEST_ASSERT_NE(expected, actual) ASSERT_PRED_FORMAT2(IIUT_COMPATIBLE_NEHELPER(expected)::Compare, expected, actual)
#define IUTEST_ASSERT_LT ASSERT_LT
#define IUTEST_ASSERT_LE ASSERT_LE
Expand Down Expand Up @@ -206,8 +209,9 @@

#endif // !defined(IUTEST_USE_GTEST)

#define ASSERT_NULL IUTEST_ASSERT_NULL
#define ASSERT_NOTNULL IUTEST_ASSERT_NOTNULL
#define ASSERT_SAME IUTEST_ASSERT_SAME
#define ASSERT_ALMOST_EQ IUTEST_ASSERT_ALMOST_EQ
#define ASSERT_NULL IUTEST_ASSERT_NULL
#define ASSERT_NOTNULL IUTEST_ASSERT_NOTNULL
#define ASSERT_SAME IUTEST_ASSERT_SAME

#endif // INCG_IRIS_IUTEST_SWITCH_ASSERT_HPP_F4AD6E1B_4B1F_40EE_A0CC_D454587B2C39_
28 changes: 16 additions & 12 deletions include/gtest/switch/iutest_switch_assume.hpp
Expand Up @@ -19,15 +19,15 @@

//======================================================================
// define
#define ASSUME_TRUE IUTEST_ASSUME_TRUE
#define ASSUME_FALSE IUTEST_ASSUME_FALSE
#define ASSUME_EQ IUTEST_ASSUME_EQ
#define ASSUME_NE IUTEST_ASSUME_NE
#define ASSUME_LT IUTEST_ASSUME_LT
#define ASSUME_LE IUTEST_ASSUME_LE
#define ASSUME_GT IUTEST_ASSUME_GT
#define ASSUME_GE IUTEST_ASSUME_GE
#define ASSUME_NEAR IUTEST_ASSUME_NEAR
#define ASSUME_TRUE IUTEST_ASSUME_TRUE
#define ASSUME_FALSE IUTEST_ASSUME_FALSE
#define ASSUME_EQ IUTEST_ASSUME_EQ
#define ASSUME_NE IUTEST_ASSUME_NE
#define ASSUME_LT IUTEST_ASSUME_LT
#define ASSUME_LE IUTEST_ASSUME_LE
#define ASSUME_GT IUTEST_ASSUME_GT
#define ASSUME_GE IUTEST_ASSUME_GE
#define ASSUME_NEAR IUTEST_ASSUME_NEAR
#define ASSUME_FLOAT_EQ IUTEST_ASSUME_FLOAT_EQ
#define ASSUME_DOUBLE_EQ IUTEST_ASSUME_DOUBLE_EQ
#define ASSUME_STREQ IUTEST_ASSUME_STREQ
Expand Down Expand Up @@ -72,6 +72,7 @@
#undef IUTEST_ASSUME_TRUE
#undef IUTEST_ASSUME_FALSE
#undef IUTEST_ASSUME_EQ
#undef IUTEST_ASSUME_ALMOST_EQ
#undef IUTEST_ASSUME_NE
#undef IUTEST_ASSUME_LT
#undef IUTEST_ASSUME_LE
Expand Down Expand Up @@ -193,6 +194,8 @@
#define IUTEST_ASSUME_TRUE(...) ASSUME_TRUE(!!(__VA_ARGS__))
#define IUTEST_ASSUME_FALSE(...) ASSUME_FALSE((__VA_ARGS__))
#define IUTEST_ASSUME_EQ ASSUME_EQ
#define IUTEST_ASSUME_ALMOST_EQ(expected, actual) \
ASSUME_PRED_FORMAT2( ::testing::internal::backward::AlmostEqHelper<IUTEST_IS_NULLLITERAL(expected)>::Compare, expected, actual)
#define IUTEST_ASSUME_NE(expected, actual) ASSUME_PRED_FORMAT2(IIUT_COMPATIBLE_NEHELPER(expected)::Compare, expected, actual)
#define IUTEST_ASSUME_LT ASSUME_LT
#define IUTEST_ASSUME_LE ASSUME_LE
Expand Down Expand Up @@ -239,8 +242,9 @@

#endif // !defined(IUTEST_USE_GTEST)

#define ASSUME_NULL IUTEST_ASSUME_NULL
#define ASSUME_NOTNULL IUTEST_ASSUME_NOTNULL
#define ASSUME_SAME IUTEST_ASSUME_SAME
#define ASSUME_ALMOST_EQ IUTEST_ASSUME_ALMOST_EQ
#define ASSUME_NULL IUTEST_ASSUME_NULL
#define ASSUME_NOTNULL IUTEST_ASSUME_NOTNULL
#define ASSUME_SAME IUTEST_ASSUME_SAME

#endif // INCG_IRIS_IUTEST_SWITCH_ASSUME_HPP_E22A3162_D581_4F4F_A344_F5D701B21F53_
40 changes: 33 additions & 7 deletions include/gtest/switch/iutest_switch_cmphelper.hpp
Expand Up @@ -45,20 +45,20 @@ namespace backward

#if defined(GTEST_IS_NULL_LITERAL_)

template <bool lhs_is_null_literal>
template<bool lhs_is_null_literal>
class EqHelper : public internal::EqHelper<lhs_is_null_literal> {};

#else

template <bool lhs_is_null_literal>
template<bool lhs_is_null_literal>
class EqHelper : public internal::EqHelper {};

#endif

template <bool lhs_is_null_literal>
template<bool lhs_is_null_literal>
class NeHelper {
public:
template <typename T1, typename T2>
template<typename T1, typename T2>
static AssertionResult Compare(const char* expected_expression,
const char* actual_expression,
const T1& expected,
Expand All @@ -76,10 +76,10 @@ class NeHelper {
}
};

template <>
template<>
class NeHelper<true> {
public:
template <typename T1, typename T2>
template<typename T1, typename T2>
static AssertionResult Compare(
const char* expected_expression,
const char* actual_expression,
Expand All @@ -90,7 +90,7 @@ class NeHelper<true> {
actual);
}

template <typename T>
template<typename T>
static AssertionResult Compare(
const char* expected_expression,
const char* actual_expression,
Expand All @@ -101,6 +101,32 @@ class NeHelper<true> {
}
};

template<bool lhs_is_null_literal>
class AlmostEqHelper : public EqHelper<lhs_is_null_literal>
{
public:
template<typename T1, typename T2>
static AssertionResult Compare(const char* expr1, const char* expr2, const T1& val1, const T2& val2)
{
return EqHelper<false>::Compare(expr1, expr2, val1, (T1)val2);
}
template<typename T>
static AssertionResult Compare(const char* expr1, const char* expr2, const float& val1, const T& val2)
{
return CmpHelperFloatingPointEQ<float>(expr1, expr2, val1, (float)val2);
}
template<typename T>
static AssertionResult Compare(const char* expr1, const char* expr2, const double& val1, const T& val2)
{
return CmpHelperFloatingPointEQ<double>(expr1, expr2, val1, (double)val2);
}
};

template<>
class AlmostEqHelper<true> : public EqHelper<true>
{
};

} // end of namespace backward

//======================================================================
Expand Down
28 changes: 16 additions & 12 deletions include/gtest/switch/iutest_switch_expect.hpp
Expand Up @@ -60,15 +60,15 @@

//======================================================================
// define
#define EXPECT_TRUE IUTEST_EXPECT_TRUE
#define EXPECT_FALSE IUTEST_EXPECT_FALSE
#define EXPECT_EQ IUTEST_EXPECT_EQ
#define EXPECT_NE IUTEST_EXPECT_NE
#define EXPECT_LT IUTEST_EXPECT_LT
#define EXPECT_LE IUTEST_EXPECT_LE
#define EXPECT_GT IUTEST_EXPECT_GT
#define EXPECT_GE IUTEST_EXPECT_GE
#define EXPECT_NEAR IUTEST_EXPECT_NEAR
#define EXPECT_TRUE IUTEST_EXPECT_TRUE
#define EXPECT_FALSE IUTEST_EXPECT_FALSE
#define EXPECT_EQ IUTEST_EXPECT_EQ
#define EXPECT_NE IUTEST_EXPECT_NE
#define EXPECT_LT IUTEST_EXPECT_LT
#define EXPECT_LE IUTEST_EXPECT_LE
#define EXPECT_GT IUTEST_EXPECT_GT
#define EXPECT_GE IUTEST_EXPECT_GE
#define EXPECT_NEAR IUTEST_EXPECT_NEAR
#define EXPECT_FLOAT_EQ IUTEST_EXPECT_FLOAT_EQ
#define EXPECT_DOUBLE_EQ IUTEST_EXPECT_DOUBLE_EQ
#define EXPECT_STREQ IUTEST_EXPECT_STREQ
Expand Down Expand Up @@ -113,6 +113,7 @@
#undef IUTEST_EXPECT_TRUE
#undef IUTEST_EXPECT_FALSE
#undef IUTEST_EXPECT_EQ
#undef IUTEST_EXPECT_ALMOST_EQ
#undef IUTEST_EXPECT_NE
#undef IUTEST_EXPECT_LT
#undef IUTEST_EXPECT_LE
Expand Down Expand Up @@ -162,6 +163,8 @@
#define IUTEST_EXPECT_TRUE(...) EXPECT_TRUE(!!(__VA_ARGS__))
#define IUTEST_EXPECT_FALSE(...) EXPECT_FALSE((__VA_ARGS__))
#define IUTEST_EXPECT_EQ EXPECT_EQ
#define IUTEST_EXPECT_ALMOST_EQ(expected, actual) \
EXPECT_PRED_FORMAT2( ::testing::internal::backward::AlmostEqHelper<IUTEST_IS_NULLLITERAL(expected)>::Compare, expected, actual)
#define IUTEST_EXPECT_NE(expected, actual) EXPECT_PRED_FORMAT2(IIUT_COMPATIBLE_NEHELPER(expected)::Compare, expected, actual)
#define IUTEST_EXPECT_LT EXPECT_LT
#define IUTEST_EXPECT_LE EXPECT_LE
Expand Down Expand Up @@ -206,8 +209,9 @@

#endif // !defined(IUTEST_USE_GTEST)

#define EXPECT_NULL IUTEST_EXPECT_NULL
#define EXPECT_NOTNULL IUTEST_EXPECT_NOTNULL
#define EXPECT_SAME IUTEST_EXPECT_SAME
#define EXPECT_ALMOST_EQ IUTEST_EXPECT_ALMOST_EQ
#define EXPECT_NULL IUTEST_EXPECT_NULL
#define EXPECT_NOTNULL IUTEST_EXPECT_NOTNULL
#define EXPECT_SAME IUTEST_EXPECT_SAME

#endif // INCG_IRIS_IUTEST_SWITCH_EXPECT_HPP_F4AD6E1B_4B1F_40EE_A0CC_D454587B2C39_
28 changes: 16 additions & 12 deletions include/gtest/switch/iutest_switch_inform.hpp
Expand Up @@ -19,15 +19,15 @@

//======================================================================
// define
#define INFORM_TRUE IUTEST_INFORM_TRUE
#define INFORM_FALSE IUTEST_INFORM_FALSE
#define INFORM_EQ IUTEST_INFORM_EQ
#define INFORM_NE IUTEST_INFORM_NE
#define INFORM_LT IUTEST_INFORM_LT
#define INFORM_LE IUTEST_INFORM_LE
#define INFORM_GT IUTEST_INFORM_GT
#define INFORM_GE IUTEST_INFORM_GE
#define INFORM_NEAR IUTEST_INFORM_NEAR
#define INFORM_TRUE IUTEST_INFORM_TRUE
#define INFORM_FALSE IUTEST_INFORM_FALSE
#define INFORM_EQ IUTEST_INFORM_EQ
#define INFORM_NE IUTEST_INFORM_NE
#define INFORM_LT IUTEST_INFORM_LT
#define INFORM_LE IUTEST_INFORM_LE
#define INFORM_GT IUTEST_INFORM_GT
#define INFORM_GE IUTEST_INFORM_GE
#define INFORM_NEAR IUTEST_INFORM_NEAR
#define INFORM_FLOAT_EQ IUTEST_INFORM_FLOAT_EQ
#define INFORM_DOUBLE_EQ IUTEST_INFORM_DOUBLE_EQ
#define INFORM_STREQ IUTEST_INFORM_STREQ
Expand Down Expand Up @@ -72,6 +72,7 @@
#undef IUTEST_INFORM_TRUE
#undef IUTEST_INFORM_FALSE
#undef IUTEST_INFORM_EQ
#undef IUTEST_INFORM_ALMOST_EQ
#undef IUTEST_INFORM_NE
#undef IUTEST_INFORM_LT
#undef IUTEST_INFORM_LE
Expand Down Expand Up @@ -200,6 +201,8 @@
#define IUTEST_INFORM_TRUE(...) INFORM_TRUE(!!(__VA_ARGS__))
#define IUTEST_INFORM_FALSE(...) INFORM_FALSE((__VA_ARGS__))
#define IUTEST_INFORM_EQ INFORM_EQ
#define IUTEST_INFORM_ALMOST_EQ(expected, actual) \
INFORM_PRED_FORMAT2( ::testing::internal::backward::AlmostEqHelper<IUTEST_IS_NULLLITERAL(expected)>::Compare, expected, actual)
#define IUTEST_INFORM_NE(expected, actual) INFORM_PRED_FORMAT2(IIUT_COMPATIBLE_NEHELPER(expected)::Compare, expected, actual)
#define IUTEST_INFORM_LT INFORM_LT
#define IUTEST_INFORM_LE INFORM_LE
Expand Down Expand Up @@ -284,8 +287,9 @@ inline void AppendInformSupportPrinter()

#endif // !defined(IUTEST_USE_GTEST)

#define INFORM_NULL IUTEST_INFORM_NULL
#define INFORM_NOTNULL IUTEST_INFORM_NOTNULL
#define INFORM_SAME IUTEST_INFORM_SAME
#define INFORM_ALMOST_EQ IUTEST_INFORM_ALMOST_EQ
#define INFORM_NULL IUTEST_INFORM_NULL
#define INFORM_NOTNULL IUTEST_INFORM_NOTNULL
#define INFORM_SAME IUTEST_INFORM_SAME

#endif // INCG_IRIS_IUTEST_SWITCH_INFORM_HPP_F4AD6E1B_4B1F_40EE_A0CC_D454587B2C39_
4 changes: 4 additions & 0 deletions include/internal/iutest_internal.hpp
Expand Up @@ -483,6 +483,10 @@
IUTEST_PRED_FORMAT2_( ::iutest::internal::backward::EqHelper<IUTEST_IS_NULLLITERAL(expected)>::Compare \
, expected, actual, on_failure )

#define IUTEST_TEST_ALMOST_EQ(expected, actual, on_failure) \
IUTEST_PRED_FORMAT2_( ::iutest::internal::backward::AlmostEqHelper<IUTEST_IS_NULLLITERAL(expected)>::Compare \
, expected, actual, on_failure )

#define IUTEST_TEST_NE(v1, v2, on_failure) \
IUTEST_PRED_FORMAT2_( ::iutest::internal::backward::NeHelper<IUTEST_IS_NULLLITERAL(v1)>::Compare \
, v1, v2, on_failure )
Expand Down

0 comments on commit e1b8ac7

Please sign in to comment.