ENVIRONMENT_MODIFICATION

3.22 版本新增。

指定在运行测试时应修改的环境变量。请注意,此属性执行的操作是在 ENVIRONMENT 属性已应用后执行的。

设置为一个由分号分隔的环境变量和值的列表,格式为 MYVAR=OP:VALUE,其中 MYVAR 是要修改的环境变量的区分大小写的名称。条目按属性值中指定的顺序处理。OP 可以是以下之一:

  • reset:重置为未修改的值,忽略 MYVAR 在此条目之前的任何修改。请注意,这将把变量重置为 ENVIRONMENT 设置的值(如果已设置),否则重置为 CTest 执行其余部分的初始状态。

  • set:将 MYVAR 的当前值替换为 VALUE

  • unset:取消设置 MYVAR 的当前值。

  • string_append:将单个 VALUE 追加到 MYVAR 的当前值。

  • string_prepend:将单个 VALUE 添加到 MYVAR 的当前值的前面。

  • path_list_append:使用主机平台的路径列表分隔符(Windows 上为 ;,其他地方为 :)将单个 VALUE 追加到 MYVAR 的当前值。

  • path_list_prepend:使用主机平台的路径列表分隔符(Windows 上为 ;,其他地方为 :)将单个 VALUE 添加到 MYVAR 的当前值的前面。

  • cmake_list_append:使用 ; 作为分隔符,将单个 VALUE 追加到 MYVAR 的当前值。

  • cmake_list_prepend:使用 ; 作为分隔符,将单个 VALUE 添加到 MYVAR 的当前值的前面。

无效的 OP 值将导致测试在执行前失败。这是为了能够添加未来的操作而不改变现有测试的有效行为。

此属性的环境更改不会影响其他测试。