Changeset 74188 in vbox
- Timestamp:
- Sep 11, 2018 9:03:01 AM (7 years ago)
- svn:sync-xref-src-repo-rev:
- 124963
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/testcase/tstRTCRest-1.cpp
r74182 r74188 30 30 *********************************************************************************************************************************/ 31 31 #include <iprt/cpp/restbase.h> 32 #include <iprt/cpp/restarray.h> 33 #include <iprt/cpp/reststringmap.h> 32 34 33 35 #include <iprt/err.h> … … 1461 1463 RTTESTI_CHECK_RC(fromString(&obj4, "10 Sep 118 11:58:07", &ErrInfo, RT_XSTR(__LINE__)), VINF_SUCCESS); 1462 1464 CHECK_DATE_FMT(obj4, false, true, iRecentSec, "10 Sep 118 11:58:07", false, RTCRestDate::kFormat_Rfc2822); 1463 1465 } 1466 } 1467 1468 static void testArray() 1469 { 1470 RTTestSub(g_hTest, "RTCRestArray"); 1471 1472 { 1473 RTCRestArray<RTCRestBool> obj1; 1474 RTTESTI_CHECK(obj1.size() == 0); 1475 RTTESTI_CHECK(obj1.isNull() == false); 1476 RTTESTI_CHECK(strcmp(obj1.typeName(), "RTCRestArray<ElementType>") == 0); 1477 RTTESTI_CHECK(obj1.typeClass() == RTCRestObjectBase::kTypeClass_Array); 1478 } 1479 1480 { 1481 /* Insert a range of numbers into a int64 array. */ 1482 RTCRestArray<RTCRestInt64> Arr2; 1483 for (int64_t i = 0; i < _64K; i++) 1484 { 1485 if (i & 1) 1486 { 1487 RTCRestInt64 toCopy(i); 1488 if (i & 2) 1489 RTTESTI_CHECK_RC(Arr2.insertCopy(i, toCopy), VINF_SUCCESS); 1490 else 1491 RTTESTI_CHECK_RC(Arr2.appendCopy(toCopy), VINF_SUCCESS); 1492 } 1493 else 1494 { 1495 RTCRestInt64 *pDirect = new RTCRestInt64(i); 1496 if (i & 2) 1497 RTTESTI_CHECK_RC(Arr2.insert(i, pDirect), VINF_SUCCESS); 1498 else 1499 RTTESTI_CHECK_RC(Arr2.append(pDirect), VINF_SUCCESS); 1500 } 1501 } 1502 1503 /* verify: */ 1504 RTCRestArray<RTCRestInt64> const *pConstArr2 = &Arr2; 1505 for (int64_t i = 0; i < _64K; i++) 1506 { 1507 RTCRestInt64 *pCur = Arr2.at(i); 1508 RTTESTI_CHECK(pCur->m_iValue == i); 1509 1510 RTCRestInt64 const *pCur2 = pConstArr2->at(i); 1511 RTTESTI_CHECK(pCur2->m_iValue == i); 1512 } 1513 RTTESTI_CHECK(Arr2.first()->m_iValue == 0); 1514 RTTESTI_CHECK(Arr2.last()->m_iValue == _64K - 1); 1515 RTTESTI_CHECK(pConstArr2->first()->m_iValue == 0); 1516 RTTESTI_CHECK(pConstArr2->last()->m_iValue == _64K - 1); 1517 1518 /* Remove every 3rd element. */ 1519 for (int64_t i = _64K - 1; i > 0; i -= 3) 1520 RTTESTI_CHECK_RC(Arr2.removeAt(i), VINF_SUCCESS); 1521 #if 0 1522 for (int64_t i = 0, iValue = 0; i < (ssize_t)Arr2.size(); i++, iValue++) 1523 { 1524 if ((iValue % 3) == 0) 1525 iValue++; 1526 RTTESTI_CHECK_MSG(Arr2.at(i)->m_iValue == iValue, ("%RI64: %RI64 vs %RI64", i, Arr2.at(i)->m_iValue, iValue)); 1527 } 1528 #endif 1464 1529 } 1465 1530 } … … 1478 1543 testString("dummy", 1, 2); 1479 1544 testDate(); 1545 testArray(); 1480 1546 1481 1547 rcExit = RTTestSummaryAndDestroy(g_hTest);
Note:
See TracChangeset
for help on using the changeset viewer.