diff options
author | Ludovic Courtès <ludo@gnu.org> | 2021-01-21 16:06:10 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2021-01-22 08:36:03 +0100 |
commit | 7df3ab0f0d21e6414a22b113c832dc18475f34a7 (patch) | |
tree | f2fca01646ad86d7ca943dbd3f9c8e6cf1976a62 /tests | |
parent | 211a50352227ef8fa98bc45b2248937ab602fff1 (diff) |
store: Add 'find-roots' RPC.
* guix/serialization.scm (read-string-pairs): New procedure.
* guix/store.scm (read-arg): Add support for 'string-pairs'.
(find-roots): New procedure.
* tests/store.scm ("add-indirect-root and find-roots"): New test.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/store.scm | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/tests/store.scm b/tests/store.scm index c9a08ac690..cda0e0302f 100644 --- a/tests/store.scm +++ b/tests/store.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -201,6 +201,17 @@ ;; (valid-path? %store p1) ;; (member (pk p2) (live-paths %store))))) +(test-assert "add-indirect-root and find-roots" + (call-with-temporary-directory + (lambda (directory) + (let* ((item (add-text-to-store %store "something" (random-text))) + (root (string-append directory "/gc-root"))) + (symlink item root) + (add-indirect-root %store root) + (let ((result (member (cons root item) (find-roots %store)))) + (delete-file root) + result))))) + (test-assert "permanent root" (let* ((p (with-store store (let ((p (add-text-to-store store "random-text" |