test/CMakeLists.txt
author Balazs Dezso <deba@inf.elte.hu>
Thu, 24 Jun 2010 09:27:53 +0200
changeset 732 bb70ad62c95f
parent 647 76cbcb3e9bbb
child 742 16d466589b54
permissions -rw-r--r--
Fix critical bug in preflow (#372)

The wrong transition between the bound decrease and highest active
heuristics caused the bug. The last node chosen in bound decrease mode
is used in the first iteration in highest active mode.
     1 INCLUDE_DIRECTORIES(
     2   ${PROJECT_SOURCE_DIR}
     3   ${PROJECT_BINARY_DIR}
     4 )
     5 
     6 LINK_DIRECTORIES(
     7   ${PROJECT_BINARY_DIR}/lemon
     8 )
     9 
    10 SET(TESTS
    11   adaptors_test
    12   bfs_test
    13   circulation_test
    14   connectivity_test
    15   counter_test
    16   dfs_test
    17   digraph_test
    18   dijkstra_test
    19   dim_test
    20   edge_set_test
    21   error_test
    22   euler_test
    23   gomory_hu_test
    24   graph_copy_test
    25   graph_test
    26   graph_utils_test
    27   hao_orlin_test
    28   heap_test
    29   kruskal_test
    30   maps_test
    31   matching_test
    32   min_cost_arborescence_test
    33   min_cost_flow_test
    34   path_test
    35   preflow_test
    36   radix_sort_test
    37   random_test
    38   suurballe_test
    39   time_measure_test
    40   unionfind_test
    41 )
    42 
    43 IF(LEMON_HAVE_LP)
    44   ADD_EXECUTABLE(lp_test lp_test.cc)
    45   SET(LP_TEST_LIBS lemon)
    46 
    47   IF(LEMON_HAVE_GLPK)
    48     SET(LP_TEST_LIBS ${LP_TEST_LIBS} ${GLPK_LIBRARIES})
    49   ENDIF()
    50   IF(LEMON_HAVE_CPLEX)
    51     SET(LP_TEST_LIBS ${LP_TEST_LIBS} ${CPLEX_LIBRARIES})
    52   ENDIF()
    53   IF(LEMON_HAVE_CLP)
    54     SET(LP_TEST_LIBS ${LP_TEST_LIBS} ${COIN_CLP_LIBRARIES})
    55   ENDIF()
    56 
    57   TARGET_LINK_LIBRARIES(lp_test ${LP_TEST_LIBS})
    58   ADD_TEST(lp_test lp_test)
    59 
    60   IF(WIN32 AND LEMON_HAVE_GLPK)
    61     GET_TARGET_PROPERTY(TARGET_LOC lp_test LOCATION)
    62     GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
    63     ADD_CUSTOM_COMMAND(TARGET lp_test POST_BUILD
    64       COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/glpk.dll ${TARGET_PATH}
    65       COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/libltdl3.dll ${TARGET_PATH}
    66       COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/zlib1.dll ${TARGET_PATH}
    67     )
    68   ENDIF()
    69 
    70   IF(WIN32 AND LEMON_HAVE_CPLEX)
    71     GET_TARGET_PROPERTY(TARGET_LOC lp_test LOCATION)
    72     GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
    73     ADD_CUSTOM_COMMAND(TARGET lp_test POST_BUILD
    74       COMMAND ${CMAKE_COMMAND} -E copy ${CPLEX_BIN_DIR}/cplex91.dll ${TARGET_PATH}
    75     )
    76   ENDIF()
    77 ENDIF()
    78 
    79 IF(LEMON_HAVE_MIP)
    80   ADD_EXECUTABLE(mip_test mip_test.cc)
    81   SET(MIP_TEST_LIBS lemon)
    82 
    83   IF(LEMON_HAVE_GLPK)
    84     SET(MIP_TEST_LIBS ${MIP_TEST_LIBS} ${GLPK_LIBRARIES})
    85   ENDIF()
    86   IF(LEMON_HAVE_CPLEX)
    87     SET(MIP_TEST_LIBS ${MIP_TEST_LIBS} ${CPLEX_LIBRARIES})
    88   ENDIF()
    89   IF(LEMON_HAVE_CBC)
    90     SET(MIP_TEST_LIBS ${MIP_TEST_LIBS} ${COIN_CBC_LIBRARIES})
    91   ENDIF()
    92 
    93   TARGET_LINK_LIBRARIES(mip_test ${MIP_TEST_LIBS})
    94   ADD_TEST(mip_test mip_test)
    95 
    96   IF(WIN32 AND LEMON_HAVE_GLPK)
    97     GET_TARGET_PROPERTY(TARGET_LOC mip_test LOCATION)
    98     GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
    99     ADD_CUSTOM_COMMAND(TARGET mip_test POST_BUILD
   100       COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/glpk.dll ${TARGET_PATH}
   101       COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/libltdl3.dll ${TARGET_PATH}
   102       COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/zlib1.dll ${TARGET_PATH}
   103     )
   104   ENDIF()
   105 
   106   IF(WIN32 AND LEMON_HAVE_CPLEX)
   107     GET_TARGET_PROPERTY(TARGET_LOC mip_test LOCATION)
   108     GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
   109     ADD_CUSTOM_COMMAND(TARGET mip_test POST_BUILD
   110       COMMAND ${CMAKE_COMMAND} -E copy ${CPLEX_BIN_DIR}/cplex91.dll ${TARGET_PATH}
   111     )
   112   ENDIF()
   113 ENDIF()
   114 
   115 FOREACH(TEST_NAME ${TESTS})
   116   ADD_EXECUTABLE(${TEST_NAME} ${TEST_NAME}.cc)
   117   TARGET_LINK_LIBRARIES(${TEST_NAME} lemon)
   118   ADD_TEST(${TEST_NAME} ${TEST_NAME})
   119 ENDFOREACH()