tests/libtest-core: support multiple literal checks
authorJonathan Lebon <jlebon@redhat.com>
Thu, 11 Jan 2018 20:54:26 +0000 (20:54 +0000)
committerAtomic Bot <atomic-devel@projectatomic.io>
Thu, 11 Jan 2018 21:30:22 +0000 (21:30 +0000)
`grep` supports checking multiple fixed strings separated by newlines,
but it's mostly just easier to pass them as separate arguments, so let's
support that. This is now at parity with the similar
`assert_file_has_content`.

Closes: #1409
Approved by: cgwalters

tests/libtest-core.sh

index 2144e1ac3d03e05578dfdf9cfed9ecd3acdee90c..7223f4d243ba92114c702f959d3c17e3b3f0e397 100644 (file)
@@ -112,9 +112,12 @@ assert_file_has_content () {
 }
 
 assert_file_has_content_literal () {
-    if ! grep -q -F -e "$2" "$1"; then
-        _fatal_print_file "$1" "File '$1' doesn't match fixed string list '$2'"
-    fi
+    fpath=$1; shift
+    for s in "$@"; do
+        if ! grep -q -F -e "$s" "$fpath"; then
+            _fatal_print_file "$fpath" "File '$fpath' doesn't match fixed string list '$s'"
+        fi
+    done
 }
 
 assert_file_has_mode () {