mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2025-01-12 06:06:53 -05:00
tests: pack: Fix indentation.
* tests/pack.scm: Fix indentation.
This commit is contained in:
parent
d5f8b50365
commit
c75022d65f
1 changed files with 87 additions and 86 deletions
173
tests/pack.scm
173
tests/pack.scm
|
@ -239,15 +239,14 @@ (define bin
|
||||||
((layer)
|
((layer)
|
||||||
(invoke "tar" "xvf" layer)))
|
(invoke "tar" "xvf" layer)))
|
||||||
|
|
||||||
(when
|
(when (and (file-exists? (string-append bin "/guile"))
|
||||||
(and (file-exists? (string-append bin "/guile"))
|
(file-exists? "var/guix/db/db.sqlite")
|
||||||
(file-exists? "var/guix/db/db.sqlite")
|
(file-is-directory? "tmp")
|
||||||
(file-is-directory? "tmp")
|
(string=? (string-append #$%bootstrap-guile "/bin")
|
||||||
(string=? (string-append #$%bootstrap-guile "/bin")
|
(pk 'binlink (readlink bin)))
|
||||||
(pk 'binlink (readlink bin)))
|
(string=? (string-append #$profile "/bin/guile")
|
||||||
(string=? (string-append #$profile "/bin/guile")
|
(pk 'guilelink (readlink "bin/Guile"))))
|
||||||
(pk 'guilelink (readlink "bin/Guile"))))
|
(mkdir #$output)))))))
|
||||||
(mkdir #$output)))))))
|
|
||||||
(built-derivations (list check))))
|
(built-derivations (list check))))
|
||||||
|
|
||||||
(unless store (test-skip 1))
|
(unless store (test-skip 1))
|
||||||
|
@ -310,71 +309,72 @@ (define bin
|
||||||
(plain-file "postinst"
|
(plain-file "postinst"
|
||||||
"echo running configure script\n"))))
|
"echo running configure script\n"))))
|
||||||
(check
|
(check
|
||||||
(gexp->derivation "check-deb-pack"
|
(gexp->derivation
|
||||||
(with-imported-modules '((guix build utils))
|
"check-deb-pack"
|
||||||
#~(begin
|
(with-imported-modules '((guix build utils))
|
||||||
(use-modules (guix build utils)
|
#~(begin
|
||||||
(ice-9 match)
|
(use-modules (guix build utils)
|
||||||
(ice-9 popen)
|
(ice-9 match)
|
||||||
(ice-9 rdelim)
|
(ice-9 popen)
|
||||||
(ice-9 textual-ports)
|
(ice-9 rdelim)
|
||||||
(rnrs base))
|
(ice-9 textual-ports)
|
||||||
|
(rnrs base))
|
||||||
|
|
||||||
(setenv "PATH" (string-join
|
(setenv "PATH" (string-join
|
||||||
(list (string-append #+%tar-bootstrap "/bin")
|
(list (string-append #+%tar-bootstrap "/bin")
|
||||||
(string-append #+dpkg "/bin")
|
(string-append #+dpkg "/bin")
|
||||||
(string-append #+%ar-bootstrap "/bin"))
|
(string-append #+%ar-bootstrap "/bin"))
|
||||||
":"))
|
":"))
|
||||||
|
|
||||||
;; Validate the output of 'dpkg --info'.
|
;; Validate the output of 'dpkg --info'.
|
||||||
(let* ((port (open-pipe* OPEN_READ "dpkg" "--info" #$deb))
|
(let* ((port (open-pipe* OPEN_READ "dpkg" "--info" #$deb))
|
||||||
(info (get-string-all port))
|
(info (get-string-all port))
|
||||||
(exit-val (status:exit-val (close-pipe port))))
|
(exit-val (status:exit-val (close-pipe port))))
|
||||||
(assert (zero? exit-val))
|
(assert (zero? exit-val))
|
||||||
|
|
||||||
(assert (string-contains
|
(assert (string-contains
|
||||||
info
|
info
|
||||||
(string-append "Package: "
|
(string-append "Package: "
|
||||||
#+(package-name %bootstrap-guile))))
|
#+(package-name %bootstrap-guile))))
|
||||||
|
|
||||||
(assert (string-contains
|
(assert (string-contains
|
||||||
info
|
info
|
||||||
(string-append "Version: "
|
(string-append "Version: "
|
||||||
#+(package-version %bootstrap-guile)))))
|
#+(package-version %bootstrap-guile)))))
|
||||||
|
|
||||||
;; Sanity check .deb contents.
|
;; Sanity check .deb contents.
|
||||||
(invoke "ar" "-xv" #$deb)
|
(invoke "ar" "-xv" #$deb)
|
||||||
(assert (file-exists? "debian-binary"))
|
(assert (file-exists? "debian-binary"))
|
||||||
(assert (file-exists? "data.tar.gz"))
|
(assert (file-exists? "data.tar.gz"))
|
||||||
(assert (file-exists? "control.tar.gz"))
|
(assert (file-exists? "control.tar.gz"))
|
||||||
|
|
||||||
;; Verify there are no hard links in data.tar.gz, as hard
|
;; Verify there are no hard links in data.tar.gz, as hard
|
||||||
;; links would cause dpkg to fail unpacking the archive.
|
;; links would cause dpkg to fail unpacking the archive.
|
||||||
(define hard-links
|
(define hard-links
|
||||||
(let ((port (open-pipe* OPEN_READ "tar" "-tvf" "data.tar.gz")))
|
(let ((port (open-pipe* OPEN_READ "tar" "-tvf" "data.tar.gz")))
|
||||||
(let loop ((hard-links '()))
|
(let loop ((hard-links '()))
|
||||||
(match (read-line port)
|
(match (read-line port)
|
||||||
((? eof-object?)
|
((? eof-object?)
|
||||||
(assert (zero? (status:exit-val (close-pipe port))))
|
(assert (zero? (status:exit-val (close-pipe port))))
|
||||||
hard-links)
|
hard-links)
|
||||||
(line
|
(line
|
||||||
(if (string-prefix? "u" line)
|
(if (string-prefix? "u" line)
|
||||||
(loop (cons line hard-links))
|
(loop (cons line hard-links))
|
||||||
(loop hard-links)))))))
|
(loop hard-links)))))))
|
||||||
|
|
||||||
(unless (null? hard-links)
|
(unless (null? hard-links)
|
||||||
(error "hard links found in data.tar.gz" hard-links))
|
(error "hard links found in data.tar.gz" hard-links))
|
||||||
|
|
||||||
;; Verify the presence of the control files.
|
;; Verify the presence of the control files.
|
||||||
(invoke "tar" "-xf" "control.tar.gz")
|
(invoke "tar" "-xf" "control.tar.gz")
|
||||||
(assert (file-exists? "control"))
|
(assert (file-exists? "control"))
|
||||||
(assert (and (file-exists? "postinst")
|
(assert (and (file-exists? "postinst")
|
||||||
(= #o111 ;script is executable
|
(= #o111 ;script is executable
|
||||||
(logand #o111 (stat:perms
|
(logand #o111 (stat:perms
|
||||||
(stat "postinst"))))))
|
(stat "postinst"))))))
|
||||||
(assert (file-exists? "triggers"))
|
(assert (file-exists? "triggers"))
|
||||||
|
|
||||||
(mkdir #$output))))))
|
(mkdir #$output))))))
|
||||||
(built-derivations (list check))))
|
(built-derivations (list check))))
|
||||||
|
|
||||||
(unless store (test-skip 1))
|
(unless store (test-skip 1))
|
||||||
|
@ -390,32 +390,33 @@ (define hard-links
|
||||||
#:symlinks '(("/bin/guile" -> "bin/guile"))
|
#:symlinks '(("/bin/guile" -> "bin/guile"))
|
||||||
#:extra-options '(#:relocatable? #t)))
|
#:extra-options '(#:relocatable? #t)))
|
||||||
(check
|
(check
|
||||||
(gexp->derivation "check-rpm-pack"
|
(gexp->derivation
|
||||||
(with-imported-modules (source-module-closure
|
"check-rpm-pack"
|
||||||
'((guix build utils)))
|
(with-imported-modules (source-module-closure
|
||||||
#~(begin
|
'((guix build utils)))
|
||||||
(use-modules (guix build utils))
|
#~(begin
|
||||||
|
(use-modules (guix build utils))
|
||||||
|
|
||||||
(define fakeroot #+(file-append fakeroot "/bin/fakeroot"))
|
(define fakeroot #+(file-append fakeroot "/bin/fakeroot"))
|
||||||
(define rpm #+(file-append rpm-for-tests "/bin/rpm"))
|
(define rpm #+(file-append rpm-for-tests "/bin/rpm"))
|
||||||
(mkdir-p "/tmp/lib/rpm")
|
(mkdir-p "/tmp/lib/rpm")
|
||||||
|
|
||||||
;; Install the RPM package. This causes RPM to validate the
|
;; Install the RPM package. This causes RPM to validate the
|
||||||
;; signatures, header as well as the file digests, which
|
;; signatures, header as well as the file digests, which
|
||||||
;; makes it a rather thorough test.
|
;; makes it a rather thorough test.
|
||||||
(mkdir "test-prefix")
|
(mkdir "test-prefix")
|
||||||
(invoke fakeroot rpm "--install"
|
(invoke fakeroot rpm "--install"
|
||||||
(string-append "--prefix=" (getcwd) "/test-prefix")
|
(string-append "--prefix=" (getcwd) "/test-prefix")
|
||||||
#$rpm-pack)
|
#$rpm-pack)
|
||||||
|
|
||||||
;; Invoke the installed Guile command.
|
;; Invoke the installed Guile command.
|
||||||
(invoke "./test-prefix/bin/guile" "--version")
|
(invoke "./test-prefix/bin/guile" "--version")
|
||||||
|
|
||||||
;; Uninstall the RPM package.
|
;; Uninstall the RPM package.
|
||||||
(invoke fakeroot rpm "--erase" "guile-bootstrap")
|
(invoke fakeroot rpm "--erase" "guile-bootstrap")
|
||||||
|
|
||||||
;; Required so the above is run.
|
;; Required so the above is run.
|
||||||
(mkdir #$output))))))
|
(mkdir #$output))))))
|
||||||
(built-derivations (list check)))))
|
(built-derivations (list check)))))
|
||||||
|
|
||||||
(test-end)
|
(test-end)
|
||||||
|
|
Loading…
Reference in a new issue