From: Martin Quinson Date: Wed, 4 Jul 2018 07:46:17 +0000 (+0200) Subject: remove the old-style MC unit tests X-Git-Tag: v3_21~573 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/132593cf1045052e27ece4d523fb17428108c65f?hp=4b0aa1525597fd0800c4d00c6df3f3c49d53ee2c remove the old-style MC unit tests They will come back renewed when I merge PR #273. --- diff --git a/src/mc/sosp/PageStore.cpp b/src/mc/sosp/PageStore.cpp index a81248dc67..f0191c4889 100644 --- a/src/mc/sosp/PageStore.cpp +++ b/src/mc/sosp/PageStore.cpp @@ -178,76 +178,3 @@ std::size_t PageStore::store_page(void* page) } // namespace mc } // namespace simgrid - -#ifdef SIMGRID_TEST - -#include -#include - -#include -#include - -#include - -#include "src/mc/PageStore.hpp" - -static int value = 0; - -static void new_content(void* data, std::size_t size) -{ - ::memset(data, ++value, size); -} - -static void* getpage() -{ - return mmap(nullptr, getpagesize(), PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); -} - -XBT_TEST_SUITE("mc_page_store", "Page store"); - -XBT_TEST_UNIT("base", test_mc_page_store, "Test adding/removing pages in the store") -{ - using simgrid::mc::PageStore; - - xbt_test_add("Init"); - std::size_t pagesize = (size_t)getpagesize(); - std::unique_ptr store = std::unique_ptr(new simgrid::mc::PageStore(500)); - void* data = getpage(); - xbt_test_assert(store->size() == 0, "Bad size"); - - xbt_test_add("Store the page once"); - new_content(data, pagesize); - size_t pageno1 = store->store_page(data); - xbt_test_assert(store->get_ref(pageno1) == 1, "Bad refcount"); - const void* copy = store->get_page(pageno1); - xbt_test_assert(::memcmp(data, copy, pagesize) == 0, "Page data should be the same"); - xbt_test_assert(store->size() == 1, "Bad size"); - - xbt_test_add("Store the same page again"); - size_t pageno2 = store->store_page(data); - xbt_test_assert(pageno1 == pageno2, "Page should be the same"); - xbt_test_assert(store->get_ref(pageno1) == 2, "Bad refcount"); - xbt_test_assert(store->size() == 1, "Bad size"); - - xbt_test_add("Store a new page"); - new_content(data, pagesize); - size_t pageno3 = store->store_page(data); - xbt_test_assert(pageno1 != pageno3, "New page should be different"); - xbt_test_assert(store->size() == 2, "Bad size"); - - xbt_test_add("Unref pages"); - store->unref_page(pageno1); - xbt_assert(store->get_ref(pageno1) == 1, "Bad refcount"); - xbt_assert(store->size() == 2, "Bad size"); - store->unref_page(pageno2); - xbt_test_assert(store->size() == 1, "Bad size"); - - xbt_test_add("Reallocate page"); - new_content(data, pagesize); - size_t pageno4 = store->store_page(data); - xbt_test_assert(pageno1 == pageno4, "Page was not reused"); - xbt_test_assert(store->get_ref(pageno4) == 1, "Bad refcount"); - xbt_test_assert(store->size() == 2, "Bad size"); -} - -#endif /* SIMGRID_TEST */ diff --git a/src/mc/sosp/mc_snapshot.cpp b/src/mc/sosp/mc_snapshot.cpp index 0d892948f1..a17e3fa974 100644 --- a/src/mc/sosp/mc_snapshot.cpp +++ b/src/mc/sosp/mc_snapshot.cpp @@ -164,114 +164,3 @@ const void* Snapshot::read_bytes(void* buffer, std::size_t size, RemotePtr } // namespace mc } // namespace simgrid - -#ifdef SIMGRID_TEST - -#include -#include - -#include - -#include "src/mc/mc_config.hpp" -#include "src/mc/mc_mmu.hpp" -#include "src/mc/mc_private.hpp" -#include "src/mc/mc_snapshot.hpp" - -XBT_TEST_SUITE("mc_snapshot", "Snapshots"); - -static inline void init_memory(void* mem, size_t size) -{ - char* dest = (char*)mem; - for (size_t i = 0; i < size; ++i) { - dest[i] = rand() & 255; - } -} - -static void test_snapshot(bool sparse_checkpoint); - -XBT_TEST_UNIT("flat_snapshot", test_flat_snapshots, "Test flat snapshots") -{ - test_snapshot(0); -} - -XBT_TEST_UNIT("page_snapshots", test_per_snpashots, "Test per-page snapshots") -{ - test_snapshot(1); -} - -static void test_snapshot(bool sparse_checkpoint) -{ - - xbt_test_add("Initialization"); - _sg_mc_sparse_checkpoint = sparse_checkpoint; - xbt_assert(xbt_pagesize == getpagesize()); - xbt_assert(1 << xbt_pagebits == xbt_pagesize); - - std::unique_ptr process(new simgrid::mc::RemoteClient(getpid(), -1)); - process->init(); - mc_model_checker = new ::simgrid::mc::ModelChecker(std::move(process)); - - for (int n = 1; n != 256; ++n) { - - // Store region page(s): - size_t byte_size = n * xbt_pagesize; - void* source = mmap(nullptr, byte_size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); - xbt_assert(source != MAP_FAILED, "Could not allocate source memory"); - - // Init memory and take snapshots: - init_memory(source, byte_size); - simgrid::mc::RegionSnapshot region0 = - simgrid::mc::sparse_region(simgrid::mc::RegionType::Unknown, source, source, byte_size); - for (int i = 0; i < n; i += 2) { - init_memory((char*)source + i * xbt_pagesize, xbt_pagesize); - } - simgrid::mc::RegionSnapshot region = - simgrid::mc::sparse_region(simgrid::mc::RegionType::Unknown, source, source, byte_size); - - void* destination = mmap(nullptr, byte_size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); - xbt_assert(source != MAP_FAILED, "Could not allocate destination memory"); - - xbt_test_add("Reading whole region data for %i page(s)", n); - const void* read = MC_region_read(®ion, destination, source, byte_size); - xbt_test_assert(not memcmp(source, read, byte_size), "Mismatch in MC_region_read()"); - - xbt_test_add("Reading parts of region data for %i page(s)", n); - for (int j = 0; j != 100; ++j) { - size_t offset = rand() % byte_size; - size_t size = rand() % (byte_size - offset); - const void* read = MC_region_read(®ion, destination, (const char*)source + offset, size); - xbt_test_assert(not memcmp((char*)source + offset, read, size), "Mismatch in MC_region_read()"); - } - - xbt_test_add("Compare whole region data for %i page(s)", n); - - xbt_test_assert(MC_snapshot_region_memcmp(source, ®ion0, source, ®ion, byte_size), - "Unexpected match in MC_snapshot_region_memcmp() with previous snapshot"); - - xbt_test_add("Compare parts of region data for %i page(s) with itself", n); - for (int j = 0; j != 100; ++j) { - size_t offset = rand() % byte_size; - size_t size = rand() % (byte_size - offset); - xbt_test_assert( - not MC_snapshot_region_memcmp((char*)source + offset, ®ion, (char*)source + offset, ®ion, size), - "Mismatch in MC_snapshot_region_memcmp()"); - } - - if (n == 1) { - xbt_test_add("Read pointer for %i page(s)", n); - memcpy(source, &mc_model_checker, sizeof(void*)); - simgrid::mc::RegionSnapshot region2 = - simgrid::mc::sparse_region(simgrid::mc::RegionType::Unknown, source, source, byte_size); - xbt_test_assert(MC_region_read_pointer(®ion2, source) == mc_model_checker, - "Mismtach in MC_region_read_pointer()"); - } - - munmap(destination, byte_size); - munmap(source, byte_size); - } - - delete mc_model_checker; - mc_model_checker = nullptr; -} - -#endif /* SIMGRID_TEST */ diff --git a/tools/cmake/UnitTesting.cmake b/tools/cmake/UnitTesting.cmake index c1f0a6d82e..8586a3fc32 100644 --- a/tools/cmake/UnitTesting.cmake +++ b/tools/cmake/UnitTesting.cmake @@ -12,13 +12,6 @@ set(FILES_CONTAINING_UNITTESTS src/xbt/config.cpp ) -if(SIMGRID_HAVE_MC) - set(FILES_CONTAINING_UNITTESTS ${FILES_CONTAINING_UNITTESTS} - src/mc/PageStore.cpp - src/mc/mc_snapshot.cpp - ) -endif() - #### Nothing to change below this line to add a new tested file ################################################################