file(GLOB TEST_FILES *.png *.wxmx)

if(WIN32)
    install(FILES ${TEST_FILES} DESTINATION wxMaxima/data)
else()
    install(FILES ${TEST_FILES} DESTINATION share/wxMaxima)
endif()
file(COPY ${TEST_FILES} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})

find_program(XVFB xvfb-run)
if(XVFB)
    add_test(NAME wxmaxima_batch_textcell WORKING_DIRECTORY ${CMAKE_BINARY_DIR} COMMAND xvfb-run --auto-servernum ./wxmaxima-local --batch test/textcells.wxmx)
    add_test(NAME wxmaxima_batch_foreign_characters WORKING_DIRECTORY ${CMAKE_BINARY_DIR} COMMAND xvfb-run --auto-servernum ./wxmaxima-local --batch test/foreign-characters.wxmx)
    add_test(NAME wxmaxima_version_string WORKING_DIRECTORY ${CMAKE_BINARY_DIR} COMMAND xvfb-run --auto-servernum ./wxmaxima-local --version)
    set_tests_properties(wxmaxima_version_string PROPERTIES  PASS_REGULAR_EXPRESSION "wxMaxima ${VERSION}.*")
    add_test(NAME wxmaxima_version_returncode WORKING_DIRECTORY ${CMAKE_BINARY_DIR} COMMAND xvfb-run --auto-servernum ./wxmaxima-local --version)
    add_test(NAME wxmaxima_help WORKING_DIRECTORY ${CMAKE_BINARY_DIR}  COMMAND xvfb-run --auto-servernum ./wxmaxima-local --help)
    add_test(NAME all_celltypes WORKING_DIRECTORY ${CMAKE_BINARY_DIR} COMMAND xvfb-run --auto-servernum ./wxmaxima-local --batch test/testbench_all_celltypes.wxmx)
    add_test(NAME other_features WORKING_DIRECTORY ${CMAKE_BINARY_DIR} COMMAND xvfb-run --auto-servernum ./wxmaxima-local --batch test/other-features.wxmx)
    add_test(NAME misc_problematic_things WORKING_DIRECTORY ${CMAKE_BINARY_DIR} COMMAND xvfb-run --auto-servernum ./wxmaxima-local --batch test/misc-problematic-things.wxmx)
else()
    message(STATUS "xvfb not found => Not enabling the tests.")
endif()
