tests: import: Factorize utility function.
* tests/pypi.scm (mock): Move this... * guix/tests.scm: to here.
This commit is contained in:
parent
1ff2619bc1
commit
694b317c2d
@ -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.
|
||||
|
@ -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\": {
|
||||
|
Loading…
Reference in New Issue
Block a user