diff -r 98779da22b99 -r 48ab394a84e8 yapf/unittest/test_binaryheap.h --- a/yapf/unittest/test_binaryheap.h Wed Sep 06 01:56:01 2006 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,102 +0,0 @@ -/* $Id$ */ - -// this test uses CData structure defined in test_autocopyptr.h - -static int TestBinaryHeap1(bool silent) -{ - CData::NumInstances() = 0; - int res = 0; - { - const int max_items = 10000; - const int total_adds = 1000000; - CBinaryHeapT bh(max_items); - CFixedSizeArrayT data; - - - DBG("\nFilling BinaryHeap with %d items...", max_items); - CHECK_INT(0, bh.Size(), 0); - CHECK_INT(1, CData::NumInstances(), 0); - int i = 0; - for (; i < max_items; i++) { - CData& d = data.Add(); - d.val = rand() & 0xFFFF; - bh.Push(d); - } - CHECK_INT(2, bh.Size(), max_items); - CHECK_INT(3, CData::NumInstances(), max_items); - - - DBG("\nShaking items %d times...", total_adds); - int num_last = bh.GetHead().val; - for (i = 0; i < total_adds; i++) { - CData& d = bh.PopHead(); - //printf("\nd->val = %d, num_last = %d", d->val, num_last); - CHECK_INT(4, d.val < num_last, 0); - if(d.val < num_last) { - printf("Sort error @ item %d", i); - } - num_last = d.val; - d.val += rand() & 0xFFFF; - bh.Push(d); - } - - - DBG("\nDone!"); - CHECK_INT(5, bh.Size(), max_items); - CHECK_INT(6, CData::NumInstances(), max_items); - } - CHECK_INT(7, CData::NumInstances(), 0); - return res; -} - - - -// this test uses CData and PData structures defined in test_autocopyptr.h - -static int TestBinaryHeap2(bool silent) -{ - CData::NumInstances() = 0; - int res = 0; - { - const int max_items = 10000; - const int total_adds = 1000000; - CBinaryHeapT bh(max_items); - CFixedSizeArrayT data; - - - DBG("\nFilling BinaryHeap with %d items...", max_items); - CHECK_INT(0, bh.Size(), 0); - CHECK_INT(1, CData::NumInstances(), 0); - int i = 0; - for (; i < max_items; i++) { - CData& d = data.Add(); - d.val = rand() & 0xFFFF; - bh.Push(d); - } - CHECK_INT(2, bh.Size(), max_items); - CHECK_INT(3, CData::NumInstances(), max_items); - - - DBG("\nShaking items %d times...", total_adds); - int num_last = bh.GetHead().val; - for (i = 0; i < total_adds; i++) { - CData& d = bh.GetHead(); - bh.RemoveHead(); - //printf("\nd->val = %d, num_last = %d", d->val, num_last); - CHECK_INT(4, d.val < num_last, 0); - if(d.val < num_last) { - printf("Sort error @ item %d", i); - } - num_last = d.val; - d.val += rand() & 0xFFFF; - bh.Push(d); - } - - - DBG("\nDone!"); - CHECK_INT(5, bh.Size(), max_items); - CHECK_INT(6, CData::NumInstances(), max_items); - } - CHECK_INT(7, CData::NumInstances(), 0); - return res; -}