From acccedee63d525b1d7678b3ec17a223a61bdc0c7 Mon Sep 17 00:00:00 2001 From: whh8b <whh8b@git.zephyr-software.com> Date: Thu, 4 Feb 2016 08:14:30 +0000 Subject: [PATCH] Add tests for GetNearbyFreeRanges and the copy constructor. --- test/MemorySpace.cpp | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/test/MemorySpace.cpp b/test/MemorySpace.cpp index 74c5023..0a3e486 100644 --- a/test/MemorySpace.cpp +++ b/test/MemorySpace.cpp @@ -283,6 +283,46 @@ bool TestClearSomeIteratively() return m.GetRangeCount() == 1; } +bool TestGetNearbyFreeRanges() +{ + ZiprMemorySpace_t m; + int result_count = 0; + pair<RangeSet_t::const_iterator, RangeSet_t::const_iterator> result; + RangeSet_t::const_iterator result_it, result_it_end; + + m.AddFreeRange(Range_t(512, 512)); + m.AddFreeRange(Range_t(513, 1024)); + m.AddFreeRange(Range_t(1025, 4096)); + + m.PrintMemorySpace(cout); + + result = m.GetNearbyFreeRanges(RangeAddress_t(1000)); + for (result_it = result.first, result_it_end = result.second; + result_it != result_it_end; + result_it++, result_count++) {} + return result_count == 2; +} + +bool TestCopyConstructor() +{ + ZiprMemorySpace_t m, n; + + m.AddFreeRange(Range_t(512, 512)); + m.AddFreeRange(Range_t(513, 1024)); + m.AddFreeRange(Range_t(1025, 4096)); + + + n = m; + n.AddFreeRange(Range_t(8192, 16384)); + + cout << "m: " << endl; + m.PrintMemorySpace(cout); + cout << "n: " << endl; + n.PrintMemorySpace(cout); + + return true; +} + int main(int argc, char *argv[]) { INVOKE(TestSplitMemorySpace); @@ -294,4 +334,6 @@ int main(int argc, char *argv[]) INVOKE(TestClearAllIteratively); INVOKE(TestClearSomeIteratively); INVOKE(TestEraseOneByter); + INVOKE(TestGetNearbyFreeRanges); + INVOKE(TestCopyConstructor); } -- GitLab