| # per target attribute with genex | |
| set(expect "TEST_HOST = \"[^;\"]*Tests/RunCMake/XcodeProject/XcodeAttributeGenex-build/[^;\"/]*/some\"") | |
| file(STRINGS ${RunCMake_TEST_BINARY_DIR}/XcodeAttributeGenex.xcodeproj/project.pbxproj actual | |
| REGEX "TEST_HOST = .*;" LIMIT_COUNT 1) | |
| if(NOT "${actual}" MATCHES "${expect}") | |
| message(SEND_ERROR "The actual project contains the line:\n ${actual}\n" | |
| "which does not match expected regex:\n ${expect}\n") | |
| endif() | |
| # per target attribute with variant | |
| file(STRINGS ${RunCMake_TEST_BINARY_DIR}/XcodeAttributeGenex.xcodeproj/project.pbxproj actual | |
| REGEX "CONFIG_SPECIFIC = .*;") | |
| list(REMOVE_DUPLICATES actual) | |
| set(expect "CONFIG_SPECIFIC = general") | |
| if(NOT "${actual}" MATCHES "${expect}") | |
| message(SEND_ERROR "The actual project contains the line:\n ${actual}\n" | |
| "which does not match expected regex:\n ${expect}\n") | |
| endif() | |
| set(expect "CONFIG_SPECIFIC = release") | |
| if(NOT "${actual}" MATCHES "${expect}") | |
| message(SEND_ERROR "The actual project contains the line:\n ${actual}\n" | |
| "which does not match expected regex:\n ${expect}\n") | |
| endif() | |
| # global attribute with genex | |
| set(expect "ANOTHER_GLOBAL = \"[^;\"]*Tests/RunCMake/XcodeProject/XcodeAttributeGenex-build/[^;\"/]*/another\"") | |
| file(STRINGS ${RunCMake_TEST_BINARY_DIR}/XcodeAttributeGenex.xcodeproj/project.pbxproj actual | |
| REGEX "ANOTHER_GLOBAL = .*;" LIMIT_COUNT 1) | |
| if(NOT "${actual}" MATCHES "${expect}") | |
| message(SEND_ERROR "The actual project contains the line:\n ${actual}\n" | |
| "which does not match expected regex:\n ${expect}\n") | |
| endif() | |
| # global attribute with variant | |
| file(STRINGS ${RunCMake_TEST_BINARY_DIR}/XcodeAttributeGenex.xcodeproj/project.pbxproj actual | |
| REGEX "ANOTHER_CONFIG = .*;" LIMIT_COUNT 4) | |
| list(REMOVE_DUPLICATES actual) | |
| set(expect "ANOTHER_CONFIG = general") | |
| if(NOT "${actual}" MATCHES "${expect}") | |
| message(SEND_ERROR "The actual project contains the line:\n ${actual}\n" | |
| "which does not match expected regex:\n ${expect}\n") | |
| endif() | |
| set(expect "ANOTHER_CONFIG = debug") | |
| if(NOT "${actual}" MATCHES "${expect}") | |
| message(SEND_ERROR "The actual project contains the line:\n ${actual}\n" | |
| "which does not match expected regex:\n ${expect}\n") | |
| endif() |