summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Manura <dm.git@math2.org>2011-05-14 19:42:02 -0400
committerDavid Manura <dm.git@math2.org>2011-05-14 19:42:02 -0400
commit04415ae4e21c295aad215ddf7b25ca757e278f39 (patch)
treede3e8b5054bfe0cddf1536d26c78991a5a9cb3d3
parent562873fafd15a61e0261d102df9b8a97e1f4d206 (diff)
downloadlua-04415ae4e21c295aad215ddf7b25ca757e278f39.tar.gz
build - update dist.cmake (add_test WORKING_DIRECTORY improvements)
-rw-r--r--dist.cmake12
1 files changed, 6 insertions, 6 deletions
diff --git a/dist.cmake b/dist.cmake
index faff504..10c6a68 100644
--- a/dist.cmake
+++ b/dist.cmake
@@ -365,13 +365,14 @@ endmacro ()
# ADD_LUA_TEST
# Runs Lua script `_testfile` under CTest tester.
-# Optional argument `_testcurrentdir` is current working directory to run test under
+# Optional named argument `WORKING_DIRECTORY` is current working directory to run test under
# (defaults to ${CMAKE_CURRENT_BINARY_DIR}).
# Both paths, if relative, are relative to ${CMAKE_CURRENT_SOURCE_DIR}.
# Under LuaDist, set test=true in config.lua to enable testing.
-# USE: add_lua_test ( test/test1.lua [args...] )
+# USE: add_lua_test ( test/test1.lua [args...] [WORKING_DIRECTORY dir])
macro ( add_lua_test _testfile )
if ( NOT SKIP_TESTING )
+ parse_arguments ( _ARG "WORKING_DIRECTORY" "" ${ARGN} )
include ( CTest )
find_program ( LUA NAMES lua lua.bat )
get_filename_component ( TESTFILEABS ${_testfile} ABSOLUTE )
@@ -389,15 +390,14 @@ arg[0] = '${TESTFILEABS}'
table.remove(arg, 1)
return assert(loadfile '${TESTFILEABS}')(unpack(arg))
" )
- if ( ${ARGC} GREATER 1 )
- set ( _testcurrentdir ${ARGV1} )
- get_filename_component ( TESTCURRENTDIRABS ${_testcurrentdir} ABSOLUTE )
+ if ( _ARG_WORKING_DIRECTORY )
+ get_filename_component ( TESTCURRENTDIRABS ${_ARG_WORKING_DIRECTORY} ABSOLUTE )
# note: CMake 2.6 (unlike 2.8) lacks WORKING_DIRECTORY parameter.
#old: set ( TESTWRAPPERSOURCE "require 'lfs'; lfs.chdir('${TESTCURRENTDIRABS}' ) ${TESTWRAPPERSOURCE}" )
set ( _pre ${CMAKE_COMMAND} -E chdir "${TESTCURRENTDIRABS}" )
endif ()
file ( WRITE ${TESTWRAPPER} ${TESTWRAPPERSOURCE})
- add_test ( NAME ${TESTFILEBASE} COMMAND ${_pre} ${LUA} ${TESTWRAPPER} $<CONFIGURATION> ${ARGN} )
+ add_test ( NAME ${TESTFILEBASE} COMMAND ${_pre} ${LUA} ${TESTWRAPPER} $<CONFIGURATION> ${_ARG_DEFAULT_ARGS} )
endif ()
# see also http://gdcm.svn.sourceforge.net/viewvc/gdcm/Sandbox/CMakeModules/UsePythonTest.cmake
endmacro ()