summaryrefslogtreecommitdiffstats
path: root/Tests/Module/ExternalData
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2013-01-30 19:44:49 (GMT)
committerBrad King <brad.king@kitware.com>2013-01-30 19:55:12 (GMT)
commite2e0d2e3c7108d5ce41f032ad9089155c6b4735c (patch)
tree35f65eec3eb7fa5c739f19cee30a44f94e1decb1 /Tests/Module/ExternalData
parentee2abfdc8913e4e9a5bc77c56a9d3dea83fde6f1 (diff)
downloadCMake-e2e0d2e3c7108d5ce41f032ad9089155c6b4735c.zip
CMake-e2e0d2e3c7108d5ce41f032ad9089155c6b4735c.tar.gz
CMake-e2e0d2e3c7108d5ce41f032ad9089155c6b4735c.tar.bz2
ExternalData: Collapse ../ components in DATA{} paths
Relative path components need to be normalized out even if they appear in the middle of a caller-supplied string.
Diffstat (limited to 'Tests/Module/ExternalData')
-rw-r--r--Tests/Module/ExternalData/Data2/CMakeLists.txt1
-rw-r--r--Tests/Module/ExternalData/Data2/Data2Check.cmake9
-rw-r--r--Tests/Module/ExternalData/Data2b.dat.md51
3 files changed, 8 insertions, 3 deletions
diff --git a/Tests/Module/ExternalData/Data2/CMakeLists.txt b/Tests/Module/ExternalData/Data2/CMakeLists.txt
index e6d8767..c5b79ac 100644
--- a/Tests/Module/ExternalData/Data2/CMakeLists.txt
+++ b/Tests/Module/ExternalData/Data2/CMakeLists.txt
@@ -4,6 +4,7 @@ ExternalData_Add_Test(Data2
NAME Data2Check
COMMAND ${CMAKE_COMMAND}
-D Data2=DATA{../Data2.dat}
+ -D Data2b=DATA{${CMAKE_CURRENT_SOURCE_DIR}/../Data2b.dat}
-D SeriesC=DATA{SeriesC_1_.my.dat,:}
-P ${CMAKE_CURRENT_SOURCE_DIR}/Data2Check.cmake
)
diff --git a/Tests/Module/ExternalData/Data2/Data2Check.cmake b/Tests/Module/ExternalData/Data2/Data2Check.cmake
index a1dd509..d5b0c7b 100644
--- a/Tests/Module/ExternalData/Data2/Data2Check.cmake
+++ b/Tests/Module/ExternalData/Data2/Data2Check.cmake
@@ -1,6 +1,9 @@
-if(NOT EXISTS "${Data2}")
- message(SEND_ERROR "Input file:\n ${Data2}\ndoes not exist!")
-endif()
+foreach(d "${Data2}" "${Data2b}")
+ file(STRINGS "${d}" lines LIMIT_INPUT 1024)
+ if(NOT "x${lines}" STREQUAL "xInput file already transformed.")
+ message(SEND_ERROR "Input file:\n ${d}\ndoes not have expected content, but [[${lines}]]")
+ endif()
+endforeach()
foreach(n 1 2 3)
string(REGEX REPLACE "_1_\\.my\\.dat$" "_${n}_.my.dat" SeriesCFile "${SeriesC}")
if(NOT EXISTS "${SeriesCFile}")
diff --git a/Tests/Module/ExternalData/Data2b.dat.md5 b/Tests/Module/ExternalData/Data2b.dat.md5
new file mode 100644
index 0000000..70e39bd
--- /dev/null
+++ b/Tests/Module/ExternalData/Data2b.dat.md5
@@ -0,0 +1 @@
+8c018830e3efa5caf3c7415028335a57