提交 3108aba5 编写于 作者: J jsalling

If two floats happen to be equal, return right away

 Covers the cases where infinity == infinity
上级 75ad84c9
...@@ -683,6 +683,8 @@ void UnityAssertFloatsWithin(const _UF delta, ...@@ -683,6 +683,8 @@ void UnityAssertFloatsWithin(const _UF delta,
UNITY_SKIP_EXECUTION; UNITY_SKIP_EXECUTION;
if (expected == actual) return;
if (diff < 0.0f) if (diff < 0.0f)
{ {
diff = 0.0f - diff; diff = 0.0f - diff;
...@@ -844,6 +846,8 @@ void UnityAssertDoublesWithin(const _UD delta, ...@@ -844,6 +846,8 @@ void UnityAssertDoublesWithin(const _UD delta,
UNITY_SKIP_EXECUTION; UNITY_SKIP_EXECUTION;
if (expected == actual) return;
if (diff < 0.0) if (diff < 0.0)
{ {
diff = 0.0 - diff; diff = 0.0 - diff;
......
...@@ -2838,9 +2838,7 @@ void testFloatsNotEqualBothInf(void) ...@@ -2838,9 +2838,7 @@ void testFloatsNotEqualBothInf(void)
#ifdef UNITY_EXCLUDE_FLOAT #ifdef UNITY_EXCLUDE_FLOAT
TEST_IGNORE(); TEST_IGNORE();
#else #else
EXPECT_ABORT_BEGIN
TEST_ASSERT_EQUAL_FLOAT(1.0f / f_zero, 1.0f / f_zero); TEST_ASSERT_EQUAL_FLOAT(1.0f / f_zero, 1.0f / f_zero);
VERIFY_FAILS_END
#endif #endif
} }
...@@ -3370,9 +3368,7 @@ void testDoublesNotEqualBothInf(void) ...@@ -3370,9 +3368,7 @@ void testDoublesNotEqualBothInf(void)
#ifdef UNITY_EXCLUDE_DOUBLE #ifdef UNITY_EXCLUDE_DOUBLE
TEST_IGNORE(); TEST_IGNORE();
#else #else
EXPECT_ABORT_BEGIN
TEST_ASSERT_EQUAL_DOUBLE(1.0 / d_zero, 1.0 / d_zero); TEST_ASSERT_EQUAL_DOUBLE(1.0 / d_zero, 1.0 / d_zero);
VERIFY_FAILS_END
#endif #endif
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册