opm-simulators/tests/getprop.awk

36 lines
1.0 KiB
Awk
Raw Normal View History

# Extract test property values from CTestTestfile.cmake
#
# User must initialise two awk variables, typically through the "-v" option,
# when invoking this script
#
# search: Search pattern. Typically a string such as
# set_tests_properties($test_name
#
# prop: Property name, for instance DIRNAME or SIMULATOR.
#
# Property value will be printed to the standard output stream.
#
# The script assumes that $1 on candidate lines is suitable for matching
# against 'search', and that $2 of the matching lines is the word
# 'PROPERTIES'.
#
# Example:
# # Get value of SIMULATOR property in test named by shell variable
# # $failed_test and assign this to shell variable 'binary'.
#
# binary=$(awk -v search="set_tests_properties\\\($failed_test" \
# -v prop="SIMULATOR" \
# -f getprop.awk \
# CTestTestfile.cmake)
$1 ~ search {
for (i = 3; i <= NF; ++i) {
if ($i == prop) {
val = $(i + 1)
gsub(/"/, "", val)
print val
exit
}
}
}