FileTest.cmake.in 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. set(Copy-BadArg-RESULT 1)
  2. set(Copy-BadArg-STDERR "unknown argument \"BADARG\"")
  3. set(Copy-BadPerm-RESULT 1)
  4. set(Copy-BadPerm-STDERR "COPY given invalid permission \"BADPERM\"")
  5. set(Copy-BadRegex-RESULT 1)
  6. set(Copy-BadRegex-STDERR "could not compile REGEX")
  7. set(Copy-EarlyArg-RESULT 1)
  8. set(Copy-EarlyArg-STDERR "option PERMISSIONS may not appear before")
  9. set(Copy-LateArg-RESULT 1)
  10. set(Copy-LateArg-STDERR "option FILE_PERMISSIONS may not appear after")
  11. set(Copy-NoDest-RESULT 1)
  12. set(Copy-NoDest-STDERR "given no DESTINATION")
  13. set(Copy-NoFile-RESULT 1)
  14. set(Copy-NoFile-STDERR "COPY cannot find.*/does_not_exist\\.txt")
  15. set(Glob-NoArg-RESULT 1)
  16. set(Glob-NoArg-STDERR "file must be called with at least two arguments")
  17. set(Make_Directory-NoArg-RESULT 1)
  18. set(Make-Directory-NoArg-STDERR "file must be called with at least two arguments")
  19. set(MD5-NoFile-RESULT 1)
  20. set(MD5-NoFile-STDERR "file MD5 failed to read file")
  21. set(MD5-BadArg1-RESULT 1)
  22. set(MD5-BadArg1-STDERR "file must be called with at least two arguments")
  23. set(MD5-BadArg2-RESULT 1)
  24. set(MD5-BadArg2-STDERR "file MD5 requires a file name and output variable")
  25. set(MD5-BadArg4-RESULT 1)
  26. set(MD5-BadArg4-STDERR "file MD5 requires a file name and output variable")
  27. set(MD5-Works-RESULT 0)
  28. set(MD5-Works-STDERR "10d20ddb981a6202b84aa1ce1cb7fce3")
  29. set(SHA1-Works-RESULT 0)
  30. set(SHA1-Works-STDERR "83f093e04289b21a9415f408ad50be8b57ad2f34")
  31. set(SHA224-Works-RESULT 0)
  32. set(SHA224-Works-STDERR "e995a7789922c4ef9279d94e763c8375934180a51baa7147bc48edf7")
  33. set(SHA256-Works-RESULT 0)
  34. set(SHA256-Works-STDERR "d1c5915d8b71150726a1eef75a29ec6bea8fd1bef6b7299ef8048760b0402025")
  35. set(SHA384-Works-RESULT 0)
  36. set(SHA384-Works-STDERR "1de9560b4e030e02051ea408200ffc55d70c97ac64ebf822461a5c786f495c36df43259b14483bc8d364f0106f4971ee")
  37. set(SHA512-Works-RESULT 0)
  38. set(SHA512-Works-STDERR "3982a1b4e651768bec70ab1fb97045cb7a659f4ba7203d501c52ab2e803071f9d5fd272022df15f27727fc67f8cd022e710e29010b2a9c0b467c111e2f6abf51")
  39. set(TIMESTAMP-NoFile-RESULT 0)
  40. set(TIMESTAMP-NoFile-STDERR "~~")
  41. set(TIMESTAMP-BadArg1-RESULT 1)
  42. set(TIMESTAMP-BadArg1-STDERR "file sub-command TIMESTAMP requires at least two arguments")
  43. set(TIMESTAMP-NotBogus-RESULT 0)
  44. set(TIMESTAMP-NotBogus-STDERR "all timestamps match")
  45. set(TIMESTAMP-Works-RESULT 0)
  46. set(TIMESTAMP-Works-STDERR "~[0-9]*-[01][0-9]-[0-3][0-9]T[0-2][0-9]:[0-5][0-9]:[0-6][0-9]Z~")
  47. include("@CMAKE_CURRENT_SOURCE_DIR@/CheckCMakeTest.cmake")
  48. check_cmake_test(File
  49. Copy-BadArg
  50. Copy-BadPerm
  51. Copy-BadRegex
  52. Copy-EarlyArg
  53. Copy-LateArg
  54. Copy-NoDest
  55. Copy-NoFile
  56. Glob-NoArg
  57. Make_Directory-NoArg
  58. MD5-NoFile
  59. MD5-BadArg1
  60. MD5-BadArg2
  61. MD5-BadArg4
  62. MD5-Works
  63. SHA1-Works
  64. SHA224-Works
  65. SHA256-Works
  66. SHA384-Works
  67. SHA512-Works
  68. TIMESTAMP-NoFile
  69. TIMESTAMP-BadArg1
  70. TIMESTAMP-NotBogus
  71. TIMESTAMP-Works
  72. )
  73. file(GLOB hum)
  74. if (NOT hum STREQUAL "")
  75. message(FATAL_ERROR "file(GLOB hum) did not return an empty string.")
  76. endif()
  77. # Also execute each test listed in FileTestScript.cmake:
  78. #
  79. set(scriptname "@CMAKE_CURRENT_SOURCE_DIR@/FileTestScript.cmake")
  80. set(number_of_tests_expected 62)
  81. include("@CMAKE_CURRENT_SOURCE_DIR@/ExecuteScriptTests.cmake")
  82. execute_all_script_tests(${scriptname} number_of_tests_executed)
  83. # And verify that number_of_tests_executed is at least as many as we know
  84. # about as of this writing...
  85. #
  86. message(STATUS "scriptname='${scriptname}'")
  87. message(STATUS "number_of_tests_executed='${number_of_tests_executed}'")
  88. message(STATUS "number_of_tests_expected='${number_of_tests_expected}'")
  89. if(number_of_tests_executed LESS number_of_tests_expected)
  90. message(FATAL_ERROR "error: some test cases were skipped")
  91. endif()