]> git.ipfire.org Git - thirdparty/dracut-ng.git/commitdiff
test(SKIPCPIO): introduce cpio_list_first function
authorBenjamin Drung <benjamin.drung@canonical.com>
Thu, 25 Sep 2025 09:42:32 +0000 (11:42 +0200)
committerNeal Gompa (ニール・ゴンパ) <ngompa13@gmail.com>
Sat, 27 Sep 2025 22:46:16 +0000 (18:46 -0400)
In preparation to support 3cpio as alternative archive tool, move the
cpio listing call into `cpio_list_first` and expect it to take a file as
input.

test/TEST-81-SKIPCPIO/test.sh

index 630aecec7e4b563fa796c1b8b9b7ff7e6bc6b1f2..99e6774b1e96dc6cc6d5a3a765e9726638ae9606 100755 (executable)
@@ -10,6 +10,11 @@ test_check() {
     (command -v cpio && command -v find && command -v diff) &> /dev/null
 }
 
+cpio_list_first() {
+    local file="$1"
+    cpio --extract --quiet --list < "$file"
+}
+
 skipcpio_simple() {
     mkdir -p "$CPIO_TESTDIR/skipcpio_simple/first_archive"
     pushd "$CPIO_TESTDIR/skipcpio_simple/first_archive"
@@ -32,7 +37,7 @@ skipcpio_simple() {
         | cpio -o --null -H newc >> "$CPIO_TESTDIR/skipcpio_simple.cpio"
     popd
 
-    cpio -i --list < "$CPIO_TESTDIR/skipcpio_simple.cpio" \
+    cpio_list_first "$CPIO_TESTDIR/skipcpio_simple.cpio" \
         > "$CPIO_TESTDIR/skipcpio_simple.list"
     cat << EOF | diff - "$CPIO_TESTDIR/skipcpio_simple.list"
 .
@@ -47,7 +52,8 @@ EOF
         skipcpio_path="${PKGLIBDIR}"
     fi
     "$skipcpio_path"/skipcpio "$CPIO_TESTDIR/skipcpio_simple.cpio" \
-        | cpio -i --list > "$CPIO_TESTDIR/skipcpio_simple.list"
+        > "$CPIO_TESTDIR/skipped.cpio"
+    cpio_list_first "$CPIO_TESTDIR/skipped.cpio" > "$CPIO_TESTDIR/skipcpio_simple.list"
     cat << EOF | diff - "$CPIO_TESTDIR/skipcpio_simple.list"
 .
 10