[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/03: derivations: Add test for #:leaked-env-vars.
From: |
Ludovic Courtès |
Subject: |
02/03: derivations: Add test for #:leaked-env-vars. |
Date: |
Mon, 18 Jan 2016 16:52:20 +0000 |
civodul pushed a commit to branch master
in repository guix.
commit 44ad33843a5653bf9e49b37d7fdd2903a9142ee0
Author: Ludovic Courtès <address@hidden>
Date: Mon Jan 18 15:13:30 2016 +0100
derivations: Add test for #:leaked-env-vars.
* tests/derivations.scm ("derivation #:leaked-env-vars"): New test.
---
tests/derivations.scm | 18 +++++++++++++++++-
1 files changed, 17 insertions(+), 1 deletions(-)
diff --git a/tests/derivations.scm b/tests/derivations.scm
index 1bbc93f..64cc8a9 100644
--- a/tests/derivations.scm
+++ b/tests/derivations.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <address@hidden>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -472,6 +472,22 @@
(build-derivations %store (list drv))
#f)))
+;; Here we should get the value of $NIX_STATE_DIR that the daemon sees, which
+;; is a unique value for each test process; this value is the same as the one
+;; we see in the process executing this file since it is set by 'test-env'.
+(test-equal "derivation #:leaked-env-vars"
+ (getenv "NIX_STATE_DIR")
+ (let* ((value (getenv "NIX_STATE_DIR"))
+ (drv (derivation %store "leaked-env-vars" %bash
+ '("-c" "echo -n $NIX_STATE_DIR > $out")
+ #:hash (sha256 (string->utf8 value))
+ #:hash-algo 'sha256
+ #:inputs `((,%bash))
+ #:leaked-env-vars '("NIX_STATE_DIR"))))
+ (and (build-derivations %store (list drv))
+ (call-with-input-file (derivation->output-path drv)
+ get-string-all))))
+
(define %coreutils
(false-if-exception