# Author: petter.strandmark@gmail.com (Petter Strandmark)

configure_file(test_problem1.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem1.txt COPYONLY)
configure_file(test_problem2.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem2.txt COPYONLY)
configure_file(test_problem3.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem3.txt COPYONLY)
configure_file(test_problem4.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem4.txt COPYONLY)
configure_file(test_problem5.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem5.txt COPYONLY)
configure_file(test_problem6.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem6.txt COPYONLY)
configure_file(test_problem7.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem7.txt COPYONLY)

configure_file(Anai2.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Anai2.txt COPYONLY)
configure_file(ESP.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/ESP.txt COPYONLY)
configure_file(ESP_b.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/ESP_b.txt COPYONLY)
configure_file(HLS_5_14.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/HLS_5_14.txt COPYONLY)
configure_file(PosSemiDef.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/PosSemiDef.txt COPYONLY)
configure_file(Quartic.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Quartic.txt COPYONLY)
configure_file(Triangle2.txt ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Triangle2.txt COPYONLY)

FILE(WRITE ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/main.sh
"exec $1 < $2\n")

IF (NOT MSVC)
	ADD_TEST(NAME test_problem1 COMMAND sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/main.sh "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qepcad" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem1.txt" WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})

	ADD_TEST(NAME test_problem2 COMMAND sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/main.sh "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qepcad" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem2.txt" WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})

	ADD_TEST(NAME test_problem3 COMMAND sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/main.sh "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qepcad" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem3.txt" WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})

	ADD_TEST(NAME test_problem4 COMMAND sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/main.sh "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qepcad" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem4.txt" WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})

	ADD_TEST(NAME test_problem5 COMMAND sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/main.sh "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qepcad" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem5.txt" WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})

	ADD_TEST(NAME test_problem6 COMMAND sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/main.sh "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qepcad" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem6.txt" WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})

	ADD_TEST(NAME test_problem7 COMMAND sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/main.sh "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qepcad" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test_problem7.txt" WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})

	ADD_TEST(NAME issue_3 COMMAND sh ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/main.sh "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qepcad" "${CMAKE_CURRENT_SOURCE_DIR}/Issue_3.txt" WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY})
ENDIF ()
