diff options
author | Ludovic Courtès <ludo@gnu.org> | 2022-12-20 10:35:37 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2022-12-20 16:56:03 +0100 |
commit | 2880dc3046170e9129437caca586f13956d0d811 (patch) | |
tree | 6e44b35100bc3279d0ad9491fa545758181ee104 | |
parent | 3f6c5c6f781bdf4cf5f15272642d0f3aba01aa50 (diff) | |
download | guix-2880dc3046170e9129437caca586f13956d0d811.tar.gz |
cpio: Skip test on inode numbers that don't fit on 32 bits.
Fixes <https://issues.guix.gnu.org/60202>. Reported by Christopher Baines <mail@cbaines.net>. * tests/cpio.scm (%test-file): New variable. ("file->cpio-header + write-cpio-header + read-cpio-header"): Use it. Skip test when the inode number of %TEST-FILE is too big.
-rw-r--r-- | tests/cpio.scm | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/tests/cpio.scm b/tests/cpio.scm index 516de0655b..832101d1bb 100644 --- a/tests/cpio.scm +++ b/tests/cpio.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2015, 2022 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -31,12 +31,18 @@ (define %cpio-program (which "cpio")) +(define %test-file + (search-path %load-path "guix.scm")) + (test-begin "cpio") +;; The cpio format expects 'ino' to fit in 32 bits. If we have a bigger inode +;; number, skip this test. +(test-skip + (if (>= (stat:ino (lstat %test-file)) (expt 2 32)) 1 0)) (test-assert "file->cpio-header + write-cpio-header + read-cpio-header" - (let* ((file (search-path %load-path "guix.scm")) - (header (file->cpio-header file))) + (let* ((header (file->cpio-header %test-file))) (call-with-values (lambda () (open-bytevector-output-port)) |