@@ -351,7 +351,7 @@ TEST_F(HashesTest, HIncrbyfloat) {
351351
352352 s = db.HIncrbyfloat (" GP1_HINCRBYFLOAT_KEY" , " GP1_HINCRBYFLOAT_FIELD" , " 1.234" , &new_value);
353353 ASSERT_TRUE (s.ok ());
354- ASSERT_EQ ( new_value, " 2.468" );
354+ ASSERT_NEAR ( std::stod ( new_value), 2.468 , 1e-9 );
355355
356356 // ***************** Group 2 Test *****************
357357 s = db.HSet (" GP2_HINCRBYFLOAT_KEY" , " GP2_HINCRBYFLOAT_FIELD" , " 1.234" , &ret);
@@ -382,10 +382,10 @@ TEST_F(HashesTest, HIncrbyfloat) {
382382 // operation is performed
383383 s = db.HIncrbyfloat (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_FIELD" , " 12.3456" , &new_value);
384384 ASSERT_TRUE (s.ok ());
385- ASSERT_EQ ( new_value, " 12.3456" );
385+ ASSERT_NEAR ( std::stod ( new_value), 12.3456 , 1e-9 );
386386 s = db.HGet (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_FIELD" , &new_value);
387387 ASSERT_TRUE (s.ok ());
388- ASSERT_EQ ( new_value, " 12.3456" );
388+ ASSERT_NEAR ( std::stod ( new_value), 12.3456 , 1e-9 );
389389 s = db.HLen (" HINCRBYFLOAT_KEY" , &ret);
390390 ASSERT_TRUE (s.ok ());
391391 ASSERT_EQ (ret, 1 );
@@ -404,10 +404,10 @@ TEST_F(HashesTest, HIncrbyfloat) {
404404 // operation is performed
405405 s = db.HIncrbyfloat (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_NOT_EXIST_FIELD" , " 65.4321000" , &new_value);
406406 ASSERT_TRUE (s.ok ());
407- ASSERT_EQ ( new_value, " 65.4321" );
407+ ASSERT_NEAR ( std::stod ( new_value), 65.4321 , 1e-9 );
408408 s = db.HGet (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_NOT_EXIST_FIELD" , &new_value);
409409 ASSERT_TRUE (s.ok ());
410- ASSERT_EQ ( new_value, " 65.4321" );
410+ ASSERT_NEAR ( std::stod ( new_value), 65.4321 , 1e-9 );
411411 s = db.HLen (" HINCRBYFLOAT_KEY" , &ret);
412412 ASSERT_TRUE (s.ok ());
413413 ASSERT_EQ (ret, 3 );
@@ -418,10 +418,10 @@ TEST_F(HashesTest, HIncrbyfloat) {
418418 // Positive test
419419 s = db.HIncrbyfloat (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_NUM_FIELD" , " +123.456789" , &new_value);
420420 ASSERT_TRUE (s.ok ());
421- ASSERT_EQ ( new_value, " 1123.456789" );
421+ ASSERT_NEAR ( std::stod ( new_value), 1123.456789 , 1e-9 );
422422 s = db.HGet (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_NUM_FIELD" , &new_value);
423423 ASSERT_TRUE (s.ok ());
424- ASSERT_EQ ( new_value, " 1123.456789" );
424+ ASSERT_NEAR ( std::stod ( new_value), 1123.456789 , 1e-9 );
425425
426426 // Negative test
427427 s = db.HIncrbyfloat (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_NUM_FIELD" , " -123.456789" , &new_value);
@@ -469,53 +469,53 @@ TEST_F(HashesTest, HIncrbyfloat) {
469469 // case 4
470470 s = db.HIncrbyfloat (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD4" , " .456789" , &new_value);
471471 ASSERT_TRUE (s.ok ());
472- ASSERT_EQ ( new_value, " 0.456789" );
472+ ASSERT_NEAR ( std::stod ( new_value), 0.456789 , 1e-9 );
473473 s = db.HGet (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD4" , &new_value);
474474 ASSERT_TRUE (s.ok ());
475- ASSERT_EQ ( new_value, " 0.456789" );
475+ ASSERT_NEAR ( std::stod ( new_value), 0.456789 , 1e-9 );
476476
477477 // case5
478478 s = db.HIncrbyfloat (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD5" , " -.456789" , &new_value);
479479 ASSERT_TRUE (s.ok ());
480- ASSERT_EQ ( new_value, " -0.456789" );
480+ ASSERT_NEAR ( std::stod ( new_value), -0.456789 , 1e-9 );
481481 s = db.HGet (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD5" , &new_value);
482482 ASSERT_TRUE (s.ok ());
483- ASSERT_EQ ( new_value, " -0.456789" );
483+ ASSERT_NEAR ( std::stod ( new_value), -0.456789 , 1e-9 );
484484
485485 // case6
486486 s = db.HIncrbyfloat (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD6" , " +.456789" , &new_value);
487487 ASSERT_TRUE (s.ok ());
488- ASSERT_EQ ( new_value, " 0.456789" );
488+ ASSERT_NEAR ( std::stod ( new_value), 0.456789 , 1e-9 );
489489 s = db.HGet (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD6" , &new_value);
490490 ASSERT_TRUE (s.ok ());
491- ASSERT_EQ ( new_value, " 0.456789" );
491+ ASSERT_NEAR ( std::stod ( new_value), 0.456789 , 1e-9 );
492492
493493 // case7
494494 s = db.HIncrbyfloat (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD7" , " +.456789" , &new_value);
495495 ASSERT_TRUE (s.ok ());
496- ASSERT_EQ ( new_value, " 0.456789" );
496+ ASSERT_NEAR ( std::stod ( new_value), 0.456789 , 1e-9 );
497497 s = db.HIncrbyfloat (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD7" , " -.456789" , &new_value);
498498 ASSERT_TRUE (s.ok ());
499- ASSERT_EQ ( new_value, " 0 " );
499+ ASSERT_NEAR ( std::stod ( new_value), 0 , 1e-9 );
500500 s = db.HGet (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD7" , &new_value);
501501 ASSERT_TRUE (s.ok ());
502- ASSERT_EQ ( new_value, " 0 " );
502+ ASSERT_NEAR ( std::stod ( new_value), 0 , 1e-9 );
503503
504504 // case8
505505 s = db.HIncrbyfloat (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD8" , " -00000.456789000" , &new_value);
506506 ASSERT_TRUE (s.ok ());
507- ASSERT_EQ ( new_value, " -0.456789" );
507+ ASSERT_NEAR ( std::stod ( new_value), -0.456789 , 1e-9 );
508508 s = db.HGet (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD8" , &new_value);
509509 ASSERT_TRUE (s.ok ());
510- ASSERT_EQ ( new_value, " -0.456789" );
510+ ASSERT_NEAR ( std::stod ( new_value), -0.456789 , 1e-9 );
511511
512512 // case9
513513 s = db.HIncrbyfloat (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD9" , " +00000.456789000" , &new_value);
514514 ASSERT_TRUE (s.ok ());
515- ASSERT_EQ ( new_value, " 0.456789" );
515+ ASSERT_NEAR ( std::stod ( new_value), 0.456789 , 1e-9 );
516516 s = db.HGet (" HINCRBYFLOAT_KEY" , " HINCRBYFLOAT_SP_FIELD9" , &new_value);
517517 ASSERT_TRUE (s.ok ());
518- ASSERT_EQ ( new_value, " 0.456789" );
518+ ASSERT_NEAR ( std::stod ( new_value), 0.456789 , 1e-9 );
519519
520520 s = db.HLen (" HINCRBYFLOAT_KEY" , &ret);
521521 ASSERT_TRUE (s.ok ());
0 commit comments