aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2022-02-07 23:14:04 +0100
committerMarius Bakke <marius@gnu.org>2022-12-12 20:23:32 +0100
commit2c1b488d19831702288b8bdee4cecf661da91b60 (patch)
tree232953b2b04abe76251f037e45cf4d1c1d535efe
parent9fc171b62a4992415803aec76fdb9c3bf9133f75 (diff)
downloadguix-2c1b488d19831702288b8bdee4cecf661da91b60.tar
guix-2c1b488d19831702288b8bdee4cecf661da91b60.tar.gz
tests: Add system tests for each supported kernel version.
* gnu/tests/base.scm (%test-basic-os): Rename to ... (test-basic-os): ... this, and turn into procedure that takes optional KERNEL argument. (%test-basic-os): Use that procedure. (%test-linux-libre-5.15, %test-linux-libre-5.10, %test-linux-libre-5.4, %test-linux-libre-4.19, %test-linux-libre-4.14, %test-linux-libre-4.9): New tests.
-rw-r--r--gnu/tests/base.scm46
1 files changed, 41 insertions, 5 deletions
diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm
index fe7ca35f60..844039f5f8 100644
--- a/gnu/tests/base.scm
+++ b/gnu/tests/base.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -46,10 +47,17 @@
#:use-module (guix monads)
#:use-module (guix modules)
#:use-module (guix packages)
+ #:use-module (guix utils)
#:use-module ((srfi srfi-1) #:hide (partition))
#:use-module (ice-9 match)
#:export (run-basic-test
%test-basic-os
+ %test-linux-libre-5.15
+ %test-linux-libre-5.10
+ %test-linux-libre-5.4
+ %test-linux-libre-4.19
+ %test-linux-libre-4.14
+ %test-linux-libre-4.9
%test-halt
%test-root-unmount
%test-cleanup
@@ -533,15 +541,20 @@ info --version")
(gexp->derivation name test))
-(define %test-basic-os
+(define* (test-basic-os #:optional (kernel linux-libre))
(system-test
- (name "basic")
+ (name (if (eq? kernel linux-libre)
+ "basic"
+ (string-append (package-name kernel) "-"
+ (version-major+minor (package-version kernel)))))
(description
"Instrument %SIMPLE-OS, run it in a VM, and run a series of basic
-functionality tests.")
+functionality tests, using the given KERNEL.")
(value
(let* ((os (marionette-operating-system
- %simple-os
+ (operating-system
+ (inherit %simple-os)
+ (kernel kernel))
#:imported-modules '((gnu services herd)
(guix combinators))))
(vm (virtual-machine os)))
@@ -549,7 +562,30 @@ functionality tests.")
;; set of services as the OS produced by
;; 'system-qemu-image/shared-store-script'.
(run-basic-test (virtualized-operating-system os '())
- #~(list #$vm))))))
+ #~(list #$vm)
+ name)))))
+
+(define %test-basic-os
+ (test-basic-os))
+
+;; Ensure the LTS kernels are up to snuff, too.
+(define %test-linux-libre-5.15
+ (test-basic-os linux-libre-5.15))
+
+(define %test-linux-libre-5.10
+ (test-basic-os linux-libre-5.10))
+
+(define %test-linux-libre-5.4
+ (test-basic-os linux-libre-5.4))
+
+(define %test-linux-libre-4.19
+ (test-basic-os linux-libre-4.19))
+
+(define %test-linux-libre-4.14
+ (test-basic-os linux-libre-4.14))
+
+(define %test-linux-libre-4.9
+ (test-basic-os linux-libre-4.9))
;;;