Browse Source

Tests: CPack test move and merge VerifyResult

Merge VerifyResult of different generators
pertest and move the file to its test dir.
Domen Vrankar 9 năm trước cách đây
mục cha
commit
8575affa4c

+ 0 - 34
Tests/RunCMake/CPack/DEB/DEPENDENCIES-VerifyResult.cmake

@@ -1,34 +0,0 @@
-function(checkDependencies_ FILE REGEX)
-  set(whitespaces_ "[\t\n\r ]*")
-
-  getPackageInfo("${FILE}" "FILE_INFO_")
-  if(NOT FILE_INFO_ MATCHES "${REGEX}")
-    message(FATAL_ERROR "Unexpected dependencies in '${FILE}'; file info: '${FILE_INFO_}'")
-  endif()
-endfunction()
-
-foreach(dependency_type_ DEPENDS CONFLICTS ENHANCES BREAKS REPLACES RECOMMENDS SUGGESTS)
-  string(TOLOWER "${dependency_type_}" lower_dependency_type_)
-  string(SUBSTRING ${lower_dependency_type_} 1 -1 lower_dependency_type_tail_)
-  string(SUBSTRING ${dependency_type_} 0 1 dependency_type_head_)
-  set(dependency_type_name_ "${dependency_type_head_}${lower_dependency_type_tail_}")
-
-  checkDependencies_("${FOUND_FILE_1}" ".*${dependency_type_name_}${whitespaces_}:${whitespaces_}${lower_dependency_type_}-application, ${lower_dependency_type_}-application-b.*")
-  checkDependencies_("${FOUND_FILE_2}" ".*${dependency_type_name_}${whitespaces_}:${whitespaces_}.*${lower_dependency_type_}-application, ${lower_dependency_type_}-application-b.*")
-  checkDependencies_("${FOUND_FILE_3}" ".*${dependency_type_name_}${whitespaces_}:${whitespaces_}${lower_dependency_type_}-headers.*")
-  checkDependencies_("${FOUND_FILE_4}" ".*${dependency_type_name_}${whitespaces_}:${whitespaces_}${lower_dependency_type_}-default, ${lower_dependency_type_}-default-b.*")
-  checkDependencies_("${FOUND_FILE_5}" ".*${dependency_type_name_}${whitespaces_}:${whitespaces_}${lower_dependency_type_}-default, ${lower_dependency_type_}-default-b.*")
-endforeach()
-
-checkDependencies_("${FOUND_FILE_1}" ".*Provides${whitespaces_}:${whitespaces_}provided-default, provided-default-b")
-checkDependencies_("${FOUND_FILE_2}" ".*Provides${whitespaces_}:${whitespaces_}provided-default, provided-default-b")
-checkDependencies_("${FOUND_FILE_3}" ".*Provides${whitespaces_}:${whitespaces_}provided-default, provided-default-b")
-checkDependencies_("${FOUND_FILE_4}" ".*Provides${whitespaces_}:${whitespaces_}provided-lib.*")
-checkDependencies_("${FOUND_FILE_5}" ".*Provides${whitespaces_}:${whitespaces_}provided-lib_auto.*, provided-lib_auto-b.*")
-
-# PREDEPENDS
-checkDependencies_("${FOUND_FILE_1}" ".*Pre-Depends${whitespaces_}:${whitespaces_}predepends-application, predepends-application-b.*")
-checkDependencies_("${FOUND_FILE_2}" ".*Pre-Depends${whitespaces_}:${whitespaces_}.*predepends-application, predepends-application-b.*")
-checkDependencies_("${FOUND_FILE_3}" ".*Pre-Depends${whitespaces_}:${whitespaces_}predepends-headers.*")
-checkDependencies_("${FOUND_FILE_4}" ".*Pre-Depends${whitespaces_}:${whitespaces_}predepends-default, predepends-default-b.*")
-checkDependencies_("${FOUND_FILE_5}" ".*Pre-Depends${whitespaces_}:${whitespaces_}predepends-default, predepends-default-b.*")

+ 0 - 18
Tests/RunCMake/CPack/DEB/PER_COMPONENT_FIELDS-VerifyResult.cmake

@@ -1,18 +0,0 @@
-function(checkPackageInfo_ TYPE FILE REGEX)
-  set(whitespaces_ "[\t\n\r ]*")
-
-  getPackageInfo("${FILE}" "FILE_INFO_")
-  if(NOT FILE_INFO_ MATCHES "${REGEX}")
-    message(FATAL_ERROR "Unexpected ${TYPE} in '${FILE}'; file info: '${FILE_INFO_}'")
-  endif()
-endfunction()
-
-# check package name
-checkPackageInfo_("name" "${FOUND_FILE_1}" ".*Package${whitespaces_}:${whitespaces_}per_component_fields-pkg_1")
-checkPackageInfo_("name" "${FOUND_FILE_2}" ".*Package${whitespaces_}:${whitespaces_}second")
-checkPackageInfo_("name" "${FOUND_FILE_3}" ".*Package${whitespaces_}:${whitespaces_}per_component_fields-pkg_3")
-
-# check package group
-checkPackageInfo_("group" "${FOUND_FILE_1}" ".*Section${whitespaces_}:${whitespaces_}default")
-checkPackageInfo_("group" "${FOUND_FILE_2}" ".*Section${whitespaces_}:${whitespaces_}second_group")
-checkPackageInfo_("group" "${FOUND_FILE_3}" ".*Section${whitespaces_}:${whitespaces_}default")

+ 0 - 45
Tests/RunCMake/CPack/RPM/DEPENDENCIES-VerifyResult.cmake

@@ -1,45 +0,0 @@
-function(checkDependencies_ FILE TYPE COMPARE_LIST)
-  set(whitespaces_ "[\t\n\r ]*")
-
-  execute_process(COMMAND ${RPM_EXECUTABLE} -qp --${TYPE} ${FILE}
-          WORKING_DIRECTORY "${CPACK_TEMPORARY_DIRECTORY}"
-          OUTPUT_VARIABLE FILE_DEPENDENCIES_
-          ERROR_QUIET
-          OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-  string(REPLACE "\n" ";" FILE_DEPENDENCIES_LIST_ "${FILE_DEPENDENCIES_}")
-
-  foreach(COMPARE_REGEX_ IN LISTS COMPARE_LIST)
-    unset(FOUND_)
-
-    foreach(COMPARE_ IN LISTS FILE_DEPENDENCIES_LIST_)
-      if(COMPARE_ MATCHES "${COMPARE_REGEX_}")
-        set(FOUND_ true)
-        break()
-      endif()
-    endforeach()
-
-    if(NOT FOUND_)
-      message(FATAL_ERROR "Missing dependencies in '${FILE}'; check type: '${TYPE}'; file info: '${FILE_DEPENDENCIES_}'; missing: '${COMPARE_REGEX_}'")
-    endif()
-  endforeach()
-endfunction()
-
-# TODO add tests for what should not be present in lists
-checkDependencies_("${FOUND_FILE_1}" "requires" "depend-application;depend-application-b")
-checkDependencies_("${FOUND_FILE_2}" "requires" "depend-application;depend-application-b;libtest_lib\\.so.*")
-checkDependencies_("${FOUND_FILE_3}" "requires" "depend-headers")
-checkDependencies_("${FOUND_FILE_4}" "requires" "depend-default;depend-default-b")
-checkDependencies_("${FOUND_FILE_5}" "requires" "depend-default;depend-default-b")
-
-checkDependencies_("${FOUND_FILE_1}" "conflicts" "conflict-application;conflict-application-b")
-checkDependencies_("${FOUND_FILE_2}" "conflicts" "conflict-application;conflict-application-b")
-checkDependencies_("${FOUND_FILE_3}" "conflicts" "conflict-headers")
-checkDependencies_("${FOUND_FILE_4}" "conflicts" "conflict-default;conflict-default-b")
-checkDependencies_("${FOUND_FILE_5}" "conflicts" "conflict-default;conflict-default-b")
-
-checkDependencies_("${FOUND_FILE_1}" "provides" "provided-default;provided-default-b")
-checkDependencies_("${FOUND_FILE_2}" "provides" "provided-default;provided-default-b")
-checkDependencies_("${FOUND_FILE_3}" "provides" "provided-default;provided-default-b")
-checkDependencies_("${FOUND_FILE_4}" "provides" "provided-lib")
-checkDependencies_("${FOUND_FILE_5}" "provides" "provided-lib_auto;provided-lib_auto-b")

+ 0 - 18
Tests/RunCMake/CPack/RPM/PER_COMPONENT_FIELDS-VerifyResult.cmake

@@ -1,18 +0,0 @@
-function(checkPackageInfo_ TYPE FILE REGEX)
-  set(whitespaces_ "[\t\n\r ]*")
-
-  getPackageInfo("${FILE}" "FILE_INFO_")
-  if(NOT FILE_INFO_ MATCHES "${REGEX}")
-    message(FATAL_ERROR "Unexpected ${TYPE} in '${FILE}'; file info: '${FILE_INFO_}'")
-  endif()
-endfunction()
-
-# check package name
-checkPackageInfo_("name" "${FOUND_FILE_1}" ".*Name${whitespaces_}:${whitespaces_}per_component_fields-pkg_1")
-checkPackageInfo_("name" "${FOUND_FILE_2}" ".*Name${whitespaces_}:${whitespaces_}second")
-checkPackageInfo_("name" "${FOUND_FILE_3}" ".*Name${whitespaces_}:${whitespaces_}per_component_fields-pkg_3")
-
-# check package group
-checkPackageInfo_("group" "${FOUND_FILE_1}" ".*Group${whitespaces_}:${whitespaces_}default")
-checkPackageInfo_("group" "${FOUND_FILE_2}" ".*Group${whitespaces_}:${whitespaces_}second_group")
-checkPackageInfo_("group" "${FOUND_FILE_3}" ".*Group${whitespaces_}:${whitespaces_}default")

+ 2 - 2
Tests/RunCMake/CPack/VerifyResult.cmake

@@ -84,8 +84,8 @@ else()
 endif()
 
 # handle additional result verifications
-if(EXISTS "${src_dir}/${GENERATOR_TYPE}/${RunCMake_TEST_FILE_PREFIX}-VerifyResult.cmake")
-  include("${src_dir}/${GENERATOR_TYPE}/${RunCMake_TEST_FILE_PREFIX}-VerifyResult.cmake")
+if(EXISTS "${src_dir}/tests/${RunCMake_TEST_FILE_PREFIX}/VerifyResult.cmake")
+  include("${src_dir}/tests/${RunCMake_TEST_FILE_PREFIX}/VerifyResult.cmake")
 endif()
 
 message(STATUS "${output}")

+ 0 - 0
Tests/RunCMake/CPack/DEB/DEB_EXTRA-VerifyResult.cmake → Tests/RunCMake/CPack/tests/DEB_EXTRA/VerifyResult.cmake


+ 0 - 0
Tests/RunCMake/CPack/DEB/DEB_GENERATE_SHLIBS-VerifyResult.cmake → Tests/RunCMake/CPack/tests/DEB_GENERATE_SHLIBS/VerifyResult.cmake


+ 0 - 0
Tests/RunCMake/CPack/DEB/DEB_GENERATE_SHLIBS_LDCONFIG-VerifyResult.cmake → Tests/RunCMake/CPack/tests/DEB_GENERATE_SHLIBS_LDCONFIG/VerifyResult.cmake


+ 82 - 0
Tests/RunCMake/CPack/tests/DEPENDENCIES/VerifyResult.cmake

@@ -0,0 +1,82 @@
+if(GENERATOR_TYPE STREQUAL "DEB")
+  function(checkDependencies_ FILE REGEX)
+    set(whitespaces_ "[\t\n\r ]*")
+
+    getPackageInfo("${FILE}" "FILE_INFO_")
+    if(NOT FILE_INFO_ MATCHES "${REGEX}")
+      message(FATAL_ERROR "Unexpected dependencies in '${FILE}'; file info: '${FILE_INFO_}'")
+    endif()
+  endfunction()
+
+  foreach(dependency_type_ DEPENDS CONFLICTS ENHANCES BREAKS REPLACES RECOMMENDS SUGGESTS)
+    string(TOLOWER "${dependency_type_}" lower_dependency_type_)
+    string(SUBSTRING ${lower_dependency_type_} 1 -1 lower_dependency_type_tail_)
+    string(SUBSTRING ${dependency_type_} 0 1 dependency_type_head_)
+    set(dependency_type_name_ "${dependency_type_head_}${lower_dependency_type_tail_}")
+
+    checkDependencies_("${FOUND_FILE_1}" ".*${dependency_type_name_}${whitespaces_}:${whitespaces_}${lower_dependency_type_}-application, ${lower_dependency_type_}-application-b.*")
+    checkDependencies_("${FOUND_FILE_2}" ".*${dependency_type_name_}${whitespaces_}:${whitespaces_}.*${lower_dependency_type_}-application, ${lower_dependency_type_}-application-b.*")
+    checkDependencies_("${FOUND_FILE_3}" ".*${dependency_type_name_}${whitespaces_}:${whitespaces_}${lower_dependency_type_}-headers.*")
+    checkDependencies_("${FOUND_FILE_4}" ".*${dependency_type_name_}${whitespaces_}:${whitespaces_}${lower_dependency_type_}-default, ${lower_dependency_type_}-default-b.*")
+    checkDependencies_("${FOUND_FILE_5}" ".*${dependency_type_name_}${whitespaces_}:${whitespaces_}${lower_dependency_type_}-default, ${lower_dependency_type_}-default-b.*")
+  endforeach()
+
+  checkDependencies_("${FOUND_FILE_1}" ".*Provides${whitespaces_}:${whitespaces_}provided-default, provided-default-b")
+  checkDependencies_("${FOUND_FILE_2}" ".*Provides${whitespaces_}:${whitespaces_}provided-default, provided-default-b")
+  checkDependencies_("${FOUND_FILE_3}" ".*Provides${whitespaces_}:${whitespaces_}provided-default, provided-default-b")
+  checkDependencies_("${FOUND_FILE_4}" ".*Provides${whitespaces_}:${whitespaces_}provided-lib.*")
+  checkDependencies_("${FOUND_FILE_5}" ".*Provides${whitespaces_}:${whitespaces_}provided-lib_auto.*, provided-lib_auto-b.*")
+
+  # PREDEPENDS
+  checkDependencies_("${FOUND_FILE_1}" ".*Pre-Depends${whitespaces_}:${whitespaces_}predepends-application, predepends-application-b.*")
+  checkDependencies_("${FOUND_FILE_2}" ".*Pre-Depends${whitespaces_}:${whitespaces_}.*predepends-application, predepends-application-b.*")
+  checkDependencies_("${FOUND_FILE_3}" ".*Pre-Depends${whitespaces_}:${whitespaces_}predepends-headers.*")
+  checkDependencies_("${FOUND_FILE_4}" ".*Pre-Depends${whitespaces_}:${whitespaces_}predepends-default, predepends-default-b.*")
+  checkDependencies_("${FOUND_FILE_5}" ".*Pre-Depends${whitespaces_}:${whitespaces_}predepends-default, predepends-default-b.*")
+elseif(GENERATOR_TYPE STREQUAL "RPM")
+  function(checkDependencies_ FILE TYPE COMPARE_LIST)
+    set(whitespaces_ "[\t\n\r ]*")
+
+    execute_process(COMMAND ${RPM_EXECUTABLE} -qp --${TYPE} ${FILE}
+            WORKING_DIRECTORY "${CPACK_TEMPORARY_DIRECTORY}"
+            OUTPUT_VARIABLE FILE_DEPENDENCIES_
+            ERROR_QUIET
+            OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+    string(REPLACE "\n" ";" FILE_DEPENDENCIES_LIST_ "${FILE_DEPENDENCIES_}")
+
+    foreach(COMPARE_REGEX_ IN LISTS COMPARE_LIST)
+      unset(FOUND_)
+
+      foreach(COMPARE_ IN LISTS FILE_DEPENDENCIES_LIST_)
+        if(COMPARE_ MATCHES "${COMPARE_REGEX_}")
+          set(FOUND_ true)
+          break()
+        endif()
+      endforeach()
+
+      if(NOT FOUND_)
+        message(FATAL_ERROR "Missing dependencies in '${FILE}'; check type: '${TYPE}'; file info: '${FILE_DEPENDENCIES_}'; missing: '${COMPARE_REGEX_}'")
+      endif()
+    endforeach()
+  endfunction()
+
+  # TODO add tests for what should not be present in lists
+  checkDependencies_("${FOUND_FILE_1}" "requires" "depend-application;depend-application-b")
+  checkDependencies_("${FOUND_FILE_2}" "requires" "depend-application;depend-application-b;libtest_lib\\.so.*")
+  checkDependencies_("${FOUND_FILE_3}" "requires" "depend-headers")
+  checkDependencies_("${FOUND_FILE_4}" "requires" "depend-default;depend-default-b")
+  checkDependencies_("${FOUND_FILE_5}" "requires" "depend-default;depend-default-b")
+
+  checkDependencies_("${FOUND_FILE_1}" "conflicts" "conflict-application;conflict-application-b")
+  checkDependencies_("${FOUND_FILE_2}" "conflicts" "conflict-application;conflict-application-b")
+  checkDependencies_("${FOUND_FILE_3}" "conflicts" "conflict-headers")
+  checkDependencies_("${FOUND_FILE_4}" "conflicts" "conflict-default;conflict-default-b")
+  checkDependencies_("${FOUND_FILE_5}" "conflicts" "conflict-default;conflict-default-b")
+
+  checkDependencies_("${FOUND_FILE_1}" "provides" "provided-default;provided-default-b")
+  checkDependencies_("${FOUND_FILE_2}" "provides" "provided-default;provided-default-b")
+  checkDependencies_("${FOUND_FILE_3}" "provides" "provided-default;provided-default-b")
+  checkDependencies_("${FOUND_FILE_4}" "provides" "provided-lib")
+  checkDependencies_("${FOUND_FILE_5}" "provides" "provided-lib_auto;provided-lib_auto-b")
+endif()

+ 0 - 0
Tests/RunCMake/CPack/RPM/INSTALL_SCRIPTS-VerifyResult.cmake → Tests/RunCMake/CPack/tests/INSTALL_SCRIPTS/VerifyResult.cmake


+ 0 - 0
Tests/RunCMake/CPack/DEB/LONG_FILENAMES-VerifyResult.cmake → Tests/RunCMake/CPack/tests/LONG_FILENAMES/VerifyResult.cmake


+ 0 - 0
Tests/RunCMake/CPack/TGZ/PACKAGE_CHECKSUM-VerifyResult.cmake → Tests/RunCMake/CPack/tests/PACKAGE_CHECKSUM/VerifyResult.cmake


+ 26 - 0
Tests/RunCMake/CPack/tests/PER_COMPONENT_FIELDS/VerifyResult.cmake

@@ -0,0 +1,26 @@
+function(checkPackageInfo_ TYPE FILE REGEX)
+  getPackageInfo("${FILE}" "FILE_INFO_")
+  if(NOT FILE_INFO_ MATCHES "${REGEX}")
+    message(FATAL_ERROR "Unexpected ${TYPE} in '${FILE}'; file info: '${FILE_INFO_}'")
+  endif()
+endfunction()
+
+if(GENERATOR_TYPE STREQUAL "DEB")
+  set(name_ "Package")
+  set(group_ "Section")
+elseif(GENERATOR_TYPE STREQUAL "RPM")
+  set(name_ "Name")
+  set(group_ "Group")
+endif()
+
+set(whitespaces_ "[\t\n\r ]*")
+
+# check package name
+checkPackageInfo_("name" "${FOUND_FILE_1}" ".*${name_}${whitespaces_}:${whitespaces_}per_component_fields-pkg_1")
+checkPackageInfo_("name" "${FOUND_FILE_2}" ".*${name_}${whitespaces_}:${whitespaces_}second")
+checkPackageInfo_("name" "${FOUND_FILE_3}" ".*${name_}${whitespaces_}:${whitespaces_}per_component_fields-pkg_3")
+
+# check package group
+checkPackageInfo_("group" "${FOUND_FILE_1}" ".*${group_}${whitespaces_}:${whitespaces_}default")
+checkPackageInfo_("group" "${FOUND_FILE_2}" ".*${group_}${whitespaces_}:${whitespaces_}second_group")
+checkPackageInfo_("group" "${FOUND_FILE_3}" ".*${group_}${whitespaces_}:${whitespaces_}default")

+ 0 - 0
Tests/RunCMake/CPack/RPM/RPM_DIST-VerifyResult.cmake → Tests/RunCMake/CPack/tests/RPM_DIST/VerifyResult.cmake


+ 0 - 0
Tests/RunCMake/CPack/RPM/RPM_SUGGESTS-VerifyResult.cmake → Tests/RunCMake/CPack/tests/RPM_SUGGESTS/VerifyResult.cmake


+ 0 - 0
Tests/RunCMake/CPack/RPM/SOURCE_PACKAGE-VerifyResult.cmake → Tests/RunCMake/CPack/tests/SOURCE_PACKAGE/VerifyResult.cmake