~ruther/guix-local

9e006fb3de0bd1af2434b32c3be23101e00b1b10 — Taylan Ulrich Bayırlı/Kammer 11 years ago 5620328
tests: Fix etc/profile test.

* tests/profiles.scm ("etc/profile"): Unset GUIX_PROFILE before sourcing
  etc/profile.  Use '.' instead of 'source' for sourcing.  Call 'echo $PATH'
  instead of using the output of 'set' to determine whether PATH is set.
1 files changed, 8 insertions(+), 6 deletions(-)

M tests/profiles.scm
M tests/profiles.scm => tests/profiles.scm +8 -6
@@ 237,14 237,16 @@
    (mbegin %store-monad
      (built-derivations (list drv))
      (let* ((pipe (open-input-pipe
                    (string-append "source "
                                   profile "/etc/profile; "
                                   "unset GUIX_PROFILE; set")))
             (env  (get-string-all pipe)))
                    (string-append "unset GUIX_PROFILE; "
                                   ;; 'source' is a Bashism; use '.' (dot).
                                   ". " profile "/etc/profile; "
                                   ;; Don't try to parse set(1) output because
                                   ;; it differs among shells; just use echo.
                                   "echo $PATH")))
             (path (get-string-all pipe)))
        (return
         (and (zero? (close-pipe pipe))
              (string-contains env
                               (string-append "PATH=" profile "/bin"))))))))
              (string-contains path (string-append profile "/bin"))))))))

(test-end "profiles")