diff options
author | Eric Bavier <bavier@member.fsf.org> | 2015-01-08 14:41:15 -0600 |
---|---|---|
committer | Eric Bavier <bavier@member.fsf.org> | 2015-01-09 10:38:25 -0600 |
commit | 694b317c2dfac5f8b284a5831e20d89cc112bd6b (patch) | |
tree | 35be0154e39a3d9e7cc6de702263def0e9525640 | |
parent | 1ff2619bc114aface6b7b9d818f7208f9af677df (diff) | |
download | guix-694b317c2dfac5f8b284a5831e20d89cc112bd6b.tar.gz guix-694b317c2dfac5f8b284a5831e20d89cc112bd6b.zip |
tests: import: Factorize utility function.
* tests/pypi.scm (mock): Move this...
* guix/tests.scm: to here.
-rw-r--r-- | guix/tests.scm | 11 | ||||
-rw-r--r-- | tests/pypi.scm | 9 |
2 files changed, 12 insertions, 8 deletions
diff --git a/guix/tests.scm b/guix/tests.scm index 82ae7e2084..36341cb4cc 100644 --- a/guix/tests.scm +++ b/guix/tests.scm @@ -27,6 +27,7 @@ #:export (open-connection-for-tests random-text random-bytevector + mock with-derivation-narinfo dummy-package)) @@ -70,6 +71,16 @@ (loop (1+ i))) bv)))) +(define-syntax-rule (mock (module proc replacement) body ...) + "Within BODY, replace the definition of PROC from MODULE with the definition +given by REPLACEMENT." + (let* ((m (resolve-module 'module)) + (original (module-ref m 'proc))) + (dynamic-wind + (lambda () (module-set! m 'proc replacement)) + (lambda () body ...) + (lambda () (module-set! m 'proc original))))) + ;;; ;;; Narinfo files, as used by the substituter. diff --git a/tests/pypi.scm b/tests/pypi.scm index 53c34d9e93..45cf7cac4f 100644 --- a/tests/pypi.scm +++ b/tests/pypi.scm @@ -20,17 +20,10 @@ #:use-module (guix import pypi) #:use-module (guix base32) #:use-module (guix hash) + #:use-module (guix tests) #:use-module (srfi srfi-64) #:use-module (ice-9 match)) -(define-syntax-rule (mock (module proc replacement) body ...) - (let* ((m (resolve-module 'module)) - (original (module-ref m 'proc))) - (dynamic-wind - (lambda () (module-set! m 'proc replacement)) - (lambda () body ...) - (lambda () (module-set! m 'proc original))))) - (define test-json "{ \"info\": { |