diff options
author | Ludovic Courtès <ludo@gnu.org> | 2016-06-17 15:48:27 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2016-06-17 15:48:27 +0200 |
commit | c0eeccbc2486572de1ef88249c63bc71c28dfef6 (patch) | |
tree | a265eb0b77b3b876844662da5bc9b32c549209e0 /tests/gexp.scm | |
parent | 56501d3b1727cbafed25be4268c4e6c9387088d9 (diff) | |
parent | a1b484654af07303813a215d4e04c0e4e7b199e5 (diff) | |
download | guix-c0eeccbc2486572de1ef88249c63bc71c28dfef6.tar.gz |
Merge branch 'master' into core-updates
Diffstat (limited to 'tests/gexp.scm')
-rw-r--r-- | tests/gexp.scm | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/tests/gexp.scm b/tests/gexp.scm index db0ffd2fdd..f44f0eaf9a 100644 --- a/tests/gexp.scm +++ b/tests/gexp.scm @@ -24,6 +24,7 @@ #:use-module (guix derivations) #:use-module (guix packages) #:use-module (guix tests) + #:use-module ((guix build utils) #:select (with-directory-excursion)) #:use-module (gnu packages) #:use-module (gnu packages base) #:use-module (gnu packages bootstrap) @@ -33,7 +34,8 @@ #:use-module (rnrs io ports) #:use-module (ice-9 match) #:use-module (ice-9 regex) - #:use-module (ice-9 popen)) + #:use-module (ice-9 popen) + #:use-module (ice-9 ftw)) ;; Test the (guix gexp) module. @@ -132,6 +134,29 @@ (lambda () (false-if-exception (delete-file link)))))) +(test-equal "local-file, relative file name" + (canonicalize-path (search-path %load-path "guix/base32.scm")) + (let ((directory (dirname (search-path %load-path + "guix/build-system/gnu.scm")))) + (with-directory-excursion directory + (let ((file (local-file "../guix/base32.scm"))) + (local-file-absolute-file-name file))))) + +(test-assertm "local-file, #:select?" + (mlet* %store-monad ((select? -> (lambda (file stat) + (member (basename file) + '("guix.scm" "tests" + "gexp.scm")))) + (file -> (local-file ".." "directory" + #:recursive? #t + #:select? select?)) + (dir (lower-object file))) + (return (and (store-path? dir) + (equal? (scandir dir) + '("." ".." "guix.scm" "tests")) + (equal? (scandir (string-append dir "/tests")) + '("." ".." "gexp.scm")))))) + (test-assert "one plain file" (let* ((file (plain-file "hi" "Hello, world!")) (exp (gexp (display (ungexp file)))) |