mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-04-06 21:20:33 +02:00
inferior: Add 'lookup-inferior-packages'.
* guix/inferior.scm (<inferior>)[packages, table]: New fields.
(open-inferior): Initialize these new fields.
(inferior-packages): Rename to...
(%inferior-packages): ... this.
(inferior-packages): New procedure; force the promise.
(%inferior-package-table, lookup-inferior-packages): New procedures.
* tests/inferior.scm ("lookup-inferior-packages")
("lookup-inferior-packages and eq?-ness"): New tests.
This commit is contained in:
@@ -79,6 +79,35 @@
|
||||
(close-inferior inferior)
|
||||
result))))
|
||||
|
||||
(test-equal "lookup-inferior-packages"
|
||||
(let ((->list (lambda (package)
|
||||
(list (package-name package)
|
||||
(package-version package)
|
||||
(package-location package)))))
|
||||
(list (map ->list (find-packages-by-name "guile" #f))
|
||||
(map ->list (find-packages-by-name "guile" "2.2"))))
|
||||
(let* ((inferior (open-inferior %top-builddir
|
||||
#:command "scripts/guix"))
|
||||
(->list (lambda (package)
|
||||
(list (inferior-package-name package)
|
||||
(inferior-package-version package)
|
||||
(inferior-package-location package))))
|
||||
(lst1 (map ->list
|
||||
(lookup-inferior-packages inferior "guile")))
|
||||
(lst2 (map ->list
|
||||
(lookup-inferior-packages inferior
|
||||
"guile" "2.2"))))
|
||||
(close-inferior inferior)
|
||||
(list lst1 lst2)))
|
||||
|
||||
(test-assert "lookup-inferior-packages and eq?-ness"
|
||||
(let* ((inferior (open-inferior %top-builddir
|
||||
#:command "scripts/guix"))
|
||||
(lst1 (lookup-inferior-packages inferior "guile"))
|
||||
(lst2 (lookup-inferior-packages inferior "guile")))
|
||||
(close-inferior inferior)
|
||||
(every eq? lst1 lst2)))
|
||||
|
||||
(test-equal "inferior-package-derivation"
|
||||
(map derivation-file-name
|
||||
(list (package-derivation %store %bootstrap-guile "x86_64-linux")
|
||||
|
||||
Reference in New Issue
Block a user