Hosted by
 |
with Ada.Text_IO;
with Integer_Heaps; use Integer_Heaps;
procedure Test_Suite is
H : Heap;
begin
pragma Assert(Count(H) = 0);
Insert(H, 1); Debug(H);
Insert(H, 8); Debug(H);
Insert(H, 7); Debug(H);
Insert(H, 9); Debug(H);
Insert(H, 2); Debug(H);
Insert(H, 6); Debug(H);
Insert(H, 4); Debug(H);
Insert(H, 3); Debug(H);
Insert(H, 5); Debug(H);
pragma Assert(Count(H) = 9);
Resize(H, 12); Debug(H); -- from 16 to 12
pragma Assert(Count(H) = 9);
Resize(H, 8); Debug(H); -- cut of the last item: 5
pragma Assert(Count(H) = 8);
pragma Assert(Extract(H) = 1); Debug(H);
pragma Assert(Extract(H) = 2); Debug(H);
pragma Assert(Extract(H) = 3); Debug(H);
pragma Assert(Extract(H) = 4); Debug(H);
pragma Assert(Extract(H) = 6); Debug(H);
pragma Assert(Extract(H) = 7); Debug(H);
pragma Assert(Extract(H) = 8); Debug(H);
pragma Assert(Extract(H) = 9); Debug(H);
pragma Assert(Count(H) = 0);
pragma Debug(Ada.Text_IO.Put_Line("all tests succeeded"));
end Test_Suite;
|