Erreur avec EXPECT_EQ pour la somme de double ou float

Je suis incapable de comprendre pourquoi les cas de test a échoué dans le cas d'additionner les doubles des nombres ou des flotteurs. Il fonctionne très finement pour le type de données integer.

//la méthode dans simple_method.h

double sum ( double a, double b)
{
    double res = a+b;
    return res;
}

//le cas du test de cette méthode

TEST(simpleSum, sumOfFloat)
{
    EXPECT_EQ(4.56, sum(0.56, 4.0));
}

//la sortie est

Running main() from gtest_main.cc
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from simpleSum
[ RUN      ] simpleSum.sumOfFloat
/home/pcadmin/Desktop/so/so3/simple_method_test.cpp:7: Failure
Value of: sum(0.56, 4.0)
  Actual: 4.56
Expected: 4.56
[  FAILED  ] simpleSum.sumOfFloat (0 ms)
[----------] 1 test from simpleSum (0 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (0 ms total)
[  PASSED  ] 0 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] simpleSum.sumOfFloat

 1 FAILED TEST

OriginalL'auteur suma | 2013-02-28