From: Martin Quinson Date: Thu, 31 Jan 2019 08:03:35 +0000 (+0100) Subject: Refactorize and speedup a unit test X-Git-Tag: v3_22~438 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/0c4e18a2413d28c7f0d8e5fc66c4ad7f6b5aa8e8 Refactorize and speedup a unit test I don't think there is a real need to test each region size from 1 to 256. Testing on [1;32[ should give a sufficient coverage, I think. --- diff --git a/src/mc/sosp/mc_snapshot_test.cpp b/src/mc/sosp/mc_snapshot_test.cpp index 80abca9a44..8d8d6d0731 100644 --- a/src/mc/sosp/mc_snapshot_test.cpp +++ b/src/mc/sosp/mc_snapshot_test.cpp @@ -99,7 +99,7 @@ snap_test_helper::prologue_return snap_test_helper::prologue(int n) void snap_test_helper::read_whole_region() { - for (int n = 1; n != 256; ++n) { + for (int n = 1; n != 32; ++n) { prologue_return ret = prologue(n); const void* read = MC_region_read(&(ret.region), ret.dstn, ret.src, ret.size); @@ -113,7 +113,7 @@ void snap_test_helper::read_whole_region() void snap_test_helper::read_region_parts() { - for (int n = 1; n != 256; ++n) { + for (int n = 1; n != 32; ++n) { prologue_return ret = prologue(n); @@ -131,7 +131,7 @@ void snap_test_helper::read_region_parts() void snap_test_helper::compare_whole_region() { - for (int n = 1; n != 256; ++n) { + for (int n = 1; n != 32; ++n) { prologue_return ret = prologue(n); @@ -145,7 +145,7 @@ void snap_test_helper::compare_whole_region() void snap_test_helper::compare_region_parts() { - for (int n = 1; n != 256; ++n) { + for (int n = 1; n != 32; ++n) { prologue_return ret = prologue(n); @@ -179,48 +179,30 @@ void snap_test_helper::read_pointer() /*************** End: class BOOST_tests *****************************/ TEST_CASE("MC::Snapshot: A copy/snapshot of a given memory region", "MC::Snapshot") { + auto sparse = GENERATE(false, true); - SECTION("Flat snapshot (no pages)") - { - snap_test_helper::Init(0); - - INFO("Read whole region"); - snap_test_helper::read_whole_region(); - - INFO("Read region parts"); - snap_test_helper::read_region_parts(); - - INFO("Compare whole region"); - snap_test_helper::compare_whole_region(); - - INFO("Compare region parts"); - snap_test_helper::compare_region_parts(); - - INFO("Read pointer"); - snap_test_helper::read_pointer(); - - snap_test_helper::cleanup(); + if (sparse) { + INFO("Sparse snapshot (using pages)"); + } else { + INFO("Flat snapshot (no pages)"); } - SECTION("Sparse snapshot (using pages)") - { - snap_test_helper::Init(1); + snap_test_helper::Init(sparse); - INFO("Read whole region"); - snap_test_helper::read_whole_region(); + INFO("Read whole region"); + snap_test_helper::read_whole_region(); - INFO("Read region parts"); - snap_test_helper::read_region_parts(); + INFO("Read region parts"); + snap_test_helper::read_region_parts(); - INFO("Compare whole region"); - snap_test_helper::compare_whole_region(); + INFO("Compare whole region"); + snap_test_helper::compare_whole_region(); - INFO("Compare region parts"); - snap_test_helper::compare_region_parts(); + INFO("Compare region parts"); + snap_test_helper::compare_region_parts(); - INFO("Read pointer"); - snap_test_helper::read_pointer(); + INFO("Read pointer"); + snap_test_helper::read_pointer(); - snap_test_helper::cleanup(); - } + snap_test_helper::cleanup(); }