Changeset 75037 in vbox
- Timestamp:
- Oct 24, 2018 12:55:27 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/testcase/tstRTCRest-1.cpp
r75034 r75037 594 594 { 595 595 RTTestSub(g_hTest, "RTCRestDouble"); 596 #if defined(RT_OS_WINDOWS) 597 # define TST_DBL_MAX_STRING "1.7976931348623157e+308" 598 # define TST_DBL_MIN_STRING "2.2250738585072014e-308" 599 # define TST_DBL_MAX (1.7976931348623157e+308) 600 # define TST_DBL_MIN (2.2250738585072014e-308) 601 #else 602 # define TST_DBL_MAX_STRING "1.79769313486231571e+308" 603 # define TST_DBL_MIN_STRING "2.22507385850720138e-308" 604 # define TST_DBL_MAX (1.79769313486231571e+308) 605 # define TST_DBL_MIN (2.22507385850720138e-308) 606 #endif 596 #define TST_DBL_MAX (1.79769313486231571e+308) 597 #define TST_DBL_MIN (2.22507385850720138e-308) 598 #define TST_DBL_MAX_STRING1 "1.79769313486231571e+308" 599 #define TST_DBL_MAX_STRING2 "1.7976931348623157e+308" 600 #define TST_DBL_MAX_EQUAL(a_psz) ( strcmp(a_psz, TST_DBL_MAX_STRING1) == 0 || strcmp(a_psz, TST_DBL_MAX_STRING2) == 0 ) 601 #define TST_DBL_MIN_STRING1 "2.22507385850720138e-308" 602 #define TST_DBL_MIN_STRING2 "2.2250738585072014e-308" 603 #define TST_DBL_MIN_EQUAL(a_psz) ( strcmp(a_psz, TST_DBL_MIN_STRING1) == 0 || strcmp(a_psz, TST_DBL_MIN_STRING2) == 0 ) 607 604 608 605 { … … 729 726 /* Serialization to json: */ 730 727 const char *pszJson = toJson(&obj3Max); 731 RTTESTI_CHECK_MSG( strcmp(pszJson, TST_DBL_MAX_STRING) == 0, ("pszJson=%s\n", pszJson));728 RTTESTI_CHECK_MSG(TST_DBL_MAX_EQUAL(pszJson), ("pszJson=%s\n", pszJson)); 732 729 pszJson = toJson(&obj3Min); 733 RTTESTI_CHECK_MSG( strcmp(pszJson, TST_DBL_MIN_STRING) == 0, ("pszJson=%s\n", pszJson));730 RTTESTI_CHECK_MSG(TST_DBL_MIN_EQUAL(pszJson), ("pszJson=%s\n", pszJson)); 734 731 pszJson = toJson(&obj3Null); 735 732 RTTESTI_CHECK_MSG(strcmp(pszJson, "null") == 0, ("pszJson=%s\n", pszJson)); … … 737 734 /* Serialization to string. */ 738 735 RTCString str; 739 RTCString strExpect; 736 RTCString strExpect1; 737 RTCString strExpect2; 740 738 str = "lead-in:"; 741 739 RTTESTI_CHECK_RC(obj3Max.toString(&str, RTCRestObjectBase::kToString_Append), VINF_SUCCESS); 742 strExpect.printf("lead-in:%s", TST_DBL_MAX_STRING); 743 RTTESTI_CHECK_MSG(str.equals(strExpect), ("str=%s strExpect=%s\n", str.c_str(), strExpect.c_str())); 740 strExpect1.printf("lead-in:%s", TST_DBL_MAX_STRING1); 741 strExpect2.printf("lead-in:%s", TST_DBL_MAX_STRING2); 742 RTTESTI_CHECK_MSG(str.equals(strExpect1) || str.equals(strExpect2), 743 ("str=%s strExpect1=%s strExpect2=%s\n", str.c_str(), strExpect1.c_str(), strExpect2.c_str())); 744 744 RTTESTI_CHECK_RC(obj3Max.toString(&str), VINF_SUCCESS); 745 RTTESTI_CHECK_MSG( str.equals(TST_DBL_MAX_STRING), ("str=%s\n", str.c_str()));745 RTTESTI_CHECK_MSG(TST_DBL_MAX_EQUAL(str.c_str()), ("str=%s\n", str.c_str())); 746 746 747 747 str = "lead-in:"; 748 748 RTTESTI_CHECK_RC(obj3Min.toString(&str, RTCRestObjectBase::kToString_Append), VINF_SUCCESS); 749 strExpect.printf("lead-in:%s", TST_DBL_MIN_STRING); 750 RTTESTI_CHECK_MSG(str.equals(strExpect), ("str=%s strExpect=%s\n", str.c_str(), strExpect.c_str())); 749 strExpect1.printf("lead-in:%s", TST_DBL_MIN_STRING1); 750 strExpect2.printf("lead-in:%s", TST_DBL_MIN_STRING2); 751 RTTESTI_CHECK_MSG(str.equals(strExpect1) || str.equals(strExpect2), 752 ("str=%s strExpect1=%s strExpect2=%s\n", str.c_str(), strExpect1.c_str(), strExpect2.c_str())); 751 753 RTTESTI_CHECK_RC(obj3Min.toString(&str), VINF_SUCCESS); 752 RTTESTI_CHECK_MSG( str.equals(TST_DBL_MIN_STRING), ("str=%s\n", str.c_str()));754 RTTESTI_CHECK_MSG(TST_DBL_MIN_EQUAL(str.c_str()), ("str=%s\n", str.c_str())); 753 755 754 756 str = "lead-in:"; … … 775 777 776 778 obj4.setNull(); 777 RTTESTI_CHECK_RC(deserializeFromJson(&obj4, TST_DBL_MAX_STRING , &ErrInfo, RT_XSTR(__LINE__)), VINF_SUCCESS);779 RTTESTI_CHECK_RC(deserializeFromJson(&obj4, TST_DBL_MAX_STRING1, &ErrInfo, RT_XSTR(__LINE__)), VINF_SUCCESS); 778 780 RTTESTI_CHECK(obj4.m_rdValue == TST_DBL_MAX); 779 781 RTTESTI_CHECK(obj4.isNull() == false); 780 782 781 783 obj4.setNull(); 782 RTTESTI_CHECK_RC(deserializeFromJson(&obj4, TST_DBL_MIN_STRING , &ErrInfo, RT_XSTR(__LINE__)), VINF_SUCCESS);784 RTTESTI_CHECK_RC(deserializeFromJson(&obj4, TST_DBL_MIN_STRING1, &ErrInfo, RT_XSTR(__LINE__)), VINF_SUCCESS); 783 785 RTTESTI_CHECK(obj4.m_rdValue == TST_DBL_MIN); 784 786 RTTESTI_CHECK(obj4.isNull() == false); … … 826 828 RTTESTI_CHECK(obj4.isNull() == false); 827 829 828 RTTESTI_CHECK_RC(fromString(&obj4, TST_DBL_MAX_STRING , &ErrInfo, RT_XSTR(__LINE__)), VINF_SUCCESS);830 RTTESTI_CHECK_RC(fromString(&obj4, TST_DBL_MAX_STRING1, &ErrInfo, RT_XSTR(__LINE__)), VINF_SUCCESS); 829 831 RTTESTI_CHECK(obj4.m_rdValue == TST_DBL_MAX); 830 832 RTTESTI_CHECK(obj4.isNull() == false); 831 833 832 RTTESTI_CHECK_RC(fromString(&obj4, TST_DBL_MIN_STRING , &ErrInfo, RT_XSTR(__LINE__)), VINF_SUCCESS);834 RTTESTI_CHECK_RC(fromString(&obj4, TST_DBL_MIN_STRING1, &ErrInfo, RT_XSTR(__LINE__)), VINF_SUCCESS); 833 835 RTTESTI_CHECK(obj4.m_rdValue == TST_DBL_MIN); 834 836 RTTESTI_CHECK(obj4.isNull() == false);
Note:
See TracChangeset
for help on using the changeset viewer.