cmake_minimum_required (VERSION 3.2.2) PROJECT (HDFJAVA_TEST_HDFLIB Java) set (CMAKE_VERBOSE_MAKEFILE 1) INCLUDE_DIRECTORIES ( ${JAVA_HDF_HDF4_BINARY_DIR} ${JAVA_HDF_HDF5_BINARY_DIR} ${HDFJAVA_LIB_DIR} ) set (HDFJAVA_TEST_HDFLIB_SRCS TestH4.java TestH4ANparams.java TestH4DFparams.java TestH4DFPparams.java TestH4DFRparams.java TestH4GRparams.java TestH4HCparams.java TestH4SDparams.java TestH4Vparams.java TestH4VSparams.java TestAll.java ) file (WRITE ${PROJECT_BINARY_DIR}/Manifest.txt "Main-Class: test.TestAll " ) set (CMAKE_JAVA_INCLUDE_PATH "${HDFJAVA_LIB_DIR}/junit.jar;${HDFJAVA_LIB_DIR}/hamcrest-core.jar;${HDFJAVA_HDF4_JARS};${HDFJAVA_LOGGING_JAR};${HDFJAVA_LOGGING_SIMPLE_JAR}") add_jar (${HDFJAVA_TEST_HDF_LIB_TARGET} MANIFEST ${PROJECT_BINARY_DIR}/Manifest.txt ${HDFJAVA_TEST_HDFLIB_SRCS}) get_target_property (${HDFJAVA_TEST_HDF_LIB_TARGET}_JAR_FILE ${HDFJAVA_TEST_HDF_LIB_TARGET} JAR_FILE) #install_jar (${HDFJAVA_TEST_HDF_LIB_TARGET} ${HJAVA_INSTALL_DATA_DIR}/tests tests) #get_target_property (${HDFJAVA_TEST_HDF_LIB_TARGET}_CLASSPATH ${HDFJAVA_TEST_HDF_LIB_TARGET} CLASSDIR) add_dependencies (${HDFJAVA_TEST_HDF_LIB_TARGET} ${HDFJAVA_HDF_LIB_TARGET}) set (HDF_JAVA_TEST_FILES J4Unit-interface.txt J4Unit-interface.ert ) foreach (h4_file ${HDF_JAVA_TEST_FILES}) set (dest "${PROJECT_BINARY_DIR}/${h4_file}") #message (STATUS " Copying ${h4_file}") add_custom_command ( TARGET ${HDFJAVA_TEST_HDF_LIB_TARGET} POST_BUILD COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different ${PROJECT_SOURCE_DIR}/${h4_file} ${dest} ) endforeach () if (WIN32) set (CMAKE_JAVA_INCLUDE_FLAG_SEP ";") else () set (CMAKE_JAVA_INCLUDE_FLAG_SEP ":") endif () set (CMAKE_JAVA_CLASSPATH ".") foreach (CMAKE_INCLUDE_PATH ${CMAKE_JAVA_INCLUDE_PATH}) set (CMAKE_JAVA_CLASSPATH "${CMAKE_JAVA_CLASSPATH}${CMAKE_JAVA_INCLUDE_FLAG_SEP}${CMAKE_INCLUDE_PATH}") endforeach () set (CMAKE_JAVA_CLASSPATH "${CMAKE_JAVA_CLASSPATH}${CMAKE_JAVA_INCLUDE_FLAG_SEP}${${HDFJAVA_TEST_HDF_LIB_TARGET}_JAR_FILE}") set (testfilter "OK (598 tests)") if (CMAKE_BUILD_TYPE MATCHES Debug) set (CMD_ARGS "-Dhdf.hdflib.HDFLibrary.loadLibraryName=jhdf_debug;") endif() add_test ( NAME J4Unit-interface-clearall-objects COMMAND ${CMAKE_COMMAND} -E remove J4Unit-interface.out J4Unit-interface.out.err ) add_test ( NAME J4Unit-interface COMMAND "${CMAKE_COMMAND}" -D "TEST_TESTER=${CMAKE_Java_RUNTIME};${CMAKE_Java_RUNTIME_FLAGS}" -D "TEST_CLASSPATH:STRING=${CMAKE_JAVA_CLASSPATH}" -D "TEST_ARGS:STRING=${CMD_ARGS}-ea;org.junit.runner.JUnitCore" -D "TEST_PROGRAM=test.hdflib.TestAll" -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_OUTPUT_DIRECTORY}" -D "TEST_FOLDER=${HDFJAVA_BINARY_DIR}" -D "TEST_OUTPUT=test/hdflib/J4Unit-interface.out" # -D "TEST_LOG_LEVEL=trace" -D "TEST_EXPECT=0" -D "SKIP_APPEND=1" -D "TEST_MASK_ERROR=TRUE" -D "TEST_FILTER:STRING=${testfilter}" -D "TEST_REFERENCE=test/hdflib/J4Unit-interface.txt" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (J4Unit-interface PROPERTIES DEPENDS "J4Unit-interface-clearall-objects")