diff options
author | Ludovic Courtès <ludo@gnu.org> | 2016-06-20 21:51:59 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2016-06-20 23:50:46 +0200 |
commit | 94b4274d0dc5768bac255980c7e785bd3dff261f (patch) | |
tree | 831481b9a1c7189c326cdb6c549d863f673b64c9 /gnu/tests.scm | |
parent | b1dd6ac55d567ca3a1a063efe2a003a9fee9458c (diff) | |
download | guix-94b4274d0dc5768bac255980c7e785bd3dff261f.tar.gz |
tests: Add system installation test.
* gnu/tests.scm (define-os-with-source): New macro. * gnu/tests/install.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * build-aux/run-system-tests.scm (%system-tests): Likewise.
Diffstat (limited to 'gnu/tests.scm')
-rw-r--r-- | gnu/tests.scm | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/gnu/tests.scm b/gnu/tests.scm index 7ca80ebf0e..348b5ad40f 100644 --- a/gnu/tests.scm +++ b/gnu/tests.scm @@ -22,7 +22,8 @@ #:use-module (gnu services) #:use-module (gnu services shepherd) #:export (marionette-service-type - marionette-operating-system)) + marionette-operating-system + define-os-with-source)) ;;; Commentary: ;;; @@ -127,4 +128,23 @@ in a virtual machine--i.e., controlled from the host system." (services (cons (service marionette-service-type imported-modules) (operating-system-user-services os))))) +(define-syntax define-os-with-source + (syntax-rules (use-modules operating-system) + "Define two variables: OS containing the given operating system, and +SOURCE containing the source to define OS as an sexp. + +This is convenient when we need both the <operating-system> object so we can +instantiate it, and the source to create it so we can store in in a file in +the system under test." + ((_ (os source) + (use-modules modules ...) + (operating-system fields ...)) + (begin + (define os + (operating-system fields ...)) + (define source + '(begin + (use-modules modules ...) + (operating-system fields ...))))))) + ;;; tests.scm ends here |