From 4b0625d744e73e9e7ad3708320fba7fa2cab21ae Mon Sep 17 00:00:00 2001 From: David Bremner Date: Thu, 5 May 2022 08:29:23 -0300 Subject: provide macro WITH-RESET-DATA-SOURCES As the docstring hints, this will be used in the test suite. Signed-off-by: David Bremner --- src/data.lisp | 9 +++++++++ src/package.lisp | 1 + 2 files changed, 10 insertions(+) (limited to 'src') diff --git a/src/data.lisp b/src/data.lisp index 9a219c3..d5d9d4c 100644 --- a/src/data.lisp +++ b/src/data.lisp @@ -143,6 +143,15 @@ This function is typically called at the REPL." *data-sources* nil *data-source-registrations* nil)) +(defmacro with-reset-data-sources (&body body) + "Run BODY with initially empty data sources and string data. + +This macro is typically used for testing or debugging." + `(let ((*string-data* (make-hash-table)) + *data-sources* + *data-source-registrations*) + ,@body)) + (defun get-data-string (iden1 iden2) "Return the content of an item of prerequisite data as a string. diff --git a/src/package.lisp b/src/package.lisp index 3819017..1bbf7b6 100644 --- a/src/package.lisp +++ b/src/package.lisp @@ -325,6 +325,7 @@ #:unwrap-passphrase #:get-data-protected-string #:*data-source-gnupghome* + #:with-reset-data-sources ;; image.lisp #:eval-in-grandchild -- cgit v1.2.3