all.sh - add an "objdump must not have" option to objdump_must_contain
diff --git a/tests/scripts/all.sh b/tests/scripts/all.sh
index 2b7f2cd..98d71fd 100755
--- a/tests/scripts/all.sh
+++ b/tests/scripts/all.sh
@@ -300,8 +300,10 @@
done
}
+# objdump_must_contain OBJECT_FILE MANDATORY_RE [MATCHING_LINES_MUST_NOT_INCLUDE]
objdump_must_contain () {
- objdump -g "$1" | grep -E "$2"
+ objdump -g "$1" | grep -E "$2" |
+ if [ -n "$3" ]; then ! grep -q -E "$3"; else cat; fi
}
check_headers_in_cpp () {
@@ -828,7 +830,7 @@
msg "test: submodule libmbedcrypto wasn't built (USE_CRYPTO_SUBMODULE, make)"
if_build_succeeded not test -f crypto/library/libmbedcrypto.a
msg "test: libmbedcrypto symbols are from library files (USE_CRYPTO_SUBMODULE, make)"
- if_build_succeeded objdump -g library/libmbedcrypto.a | if_build_succeeded grep -E 'library$' | if_build_succeeded not grep 'crypto' > /dev/null
+ if_build_succeeded objdump_must_contain library/libmbedcrypto.a 'library$' 'crypto'
}
component_test_not_submodule_cmake () {
@@ -840,7 +842,7 @@
msg "test: submodule libmbedcrypto wasn't built (USE_CRYPTO_SUBMODULE, cmake)"
if_build_succeeded not test -f crypto/library/libmbedcrypto.a
msg "test: libmbedcrypto symbols are from library files (USE_CRYPTO_SUBMODULE, cmake)"
- if_build_succeeded objdump -g library/libmbedcrypto.a | if_build_succeeded grep -E 'library$' | if_build_succeeded not grep 'crypto' > /dev/null
+ if_build_succeeded objdump_must_contain library/libmbedcrypto.a 'library$' 'crypto'
}
component_test_use_psa_crypto_full_cmake_asan() {