summary refs log tree commit diff
path: root/build-aux
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2016-06-20 22:34:13 +0200
committerLudovic Courtès <ludo@gnu.org>2016-06-20 23:50:46 +0200
commit98b65b5ff6b1dea0ad58b0f47dd163c32d0cbf6e (patch)
tree7aa29f770d1ff50aea95af404324061ec708cd03 /build-aux
parent2a6ba870867e31a32faca0dbf0e062bf9f5c0d78 (diff)
downloadguix-98b65b5ff6b1dea0ad58b0f47dd163c32d0cbf6e.tar.gz
tests: Add a mechanism to describe and discover system tests.
* gnu/tests.scm (<system-test>): New record type.
(write-system-test, test-modules, fold-system-tests)
(all-system-tests): New procedures.
* gnu/tests/base.scm (%test-basic-os): Turn into a <system-test>.
* gnu/tests/install.scm (%test-installed-os): Likewise.
* build-aux/run-system-tests.scm (%system-tests): Remove.
(run-system-tests): Use 'all-system-tests'.
Diffstat (limited to 'build-aux')
-rw-r--r--build-aux/run-system-tests.scm15
1 files changed, 8 insertions, 7 deletions
diff --git a/build-aux/run-system-tests.scm b/build-aux/run-system-tests.scm
index 4ce9b83fed..f7c99def23 100644
--- a/build-aux/run-system-tests.scm
+++ b/build-aux/run-system-tests.scm
@@ -17,8 +17,7 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (run-system-tests)
-  #:use-module (gnu tests base)
-  #:use-module (gnu tests install)
+  #:use-module (gnu tests)
   #:use-module (guix store)
   #:use-module (guix monads)
   #:use-module (guix derivations)
@@ -45,14 +44,16 @@
                 lst)
          (lift1 reverse %store-monad))))
 
-(define %system-tests
-  (list %test-basic-os
-        %test-installed-os))
-
 (define (run-system-tests . args)
+  (define tests
+    (all-system-tests))
+
+  (format (current-error-port) "Running ~a system tests...~%"
+          (length tests))
+
   (with-store store
     (run-with-store store
-      (mlet* %store-monad ((drv (sequence %store-monad %system-tests))
+      (mlet* %store-monad ((drv (mapm %store-monad system-test-value tests))
                            (out -> (map derivation->output-path drv)))
         (mbegin %store-monad
           (show-what-to-build* drv)