
add_executable(test_ppath main.cpp)
target_link_libraries(test_ppath phoenix_core)

#Let's create a test directory with content
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/TestDirectory)
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/TestDirectory/SomeDir)
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/TestDirectory/OtherDir)
execute_process(COMMAND touch ${CMAKE_CURRENT_BINARY_DIR}/TestDirectory/someFile.txt)
execute_process(COMMAND touch ${CMAKE_CURRENT_BINARY_DIR}/TestDirectory/otherFile.txt)

add_test(NAME TestPPath
	COMMAND ${CMAKE_CURRENT_BINARY_DIR}/test_ppath
	WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)


set(REFERENCE_PROGRAM_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/test_ppath_program_prefix)
add_executable(test_ppath_program_prefix main_test_program_prefix.cpp)
target_link_libraries(test_ppath_program_prefix phoenix_core)
target_compile_definitions(test_ppath_program_prefix PUBLIC REFERENCE_PROGRAM_LOCATION="${REFERENCE_PROGRAM_LOCATION}")

add_test(NAME TestPPathProgramPrefix
	COMMAND ${CMAKE_CURRENT_BINARY_DIR}/test_ppath_program_prefix
	WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)

add_test(NAME TestPPathProgramPrefixTestDirectory
	COMMAND ${CMAKE_CURRENT_BINARY_DIR}/test_ppath_program_prefix
	WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/TestDirectory
)

add_test(NAME TestPPathProgramPrefixTestDirectorySomeDir
	COMMAND ${CMAKE_CURRENT_BINARY_DIR}/test_ppath_program_prefix
	WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/TestDirectory/SomeDir
)

add_test(NAME TestPPathProgramPrefixTestDirectoryOtherDir
	COMMAND ${CMAKE_CURRENT_BINARY_DIR}/test_ppath_program_prefix
	WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/TestDirectory/OtherDir
)

add_test(NAME TestPPathProgramPrefixBuildDirectory
	COMMAND ${CMAKE_CURRENT_BINARY_DIR}/test_ppath_program_prefix
	WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
)

