summary refs log tree commit diff
path: root/gnu/tests
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2023-05-14 22:44:56 +0200
committerLudovic Courtès <ludo@gnu.org>2023-05-14 23:14:25 +0200
commit150367c84da8766dc0358ff4878b9e17dbea6a40 (patch)
tree217f7341b74f186669de73625941d11d098f0612 /gnu/tests
parent8aaa5cf40539b3634be744700bbe246c69c8ddbf (diff)
downloadguix-150367c84da8766dc0358ff4878b9e17dbea6a40.tar.gz
tests: elogind: Wait until 'elogind' is up.
Previously we could find ourselves typing in too early.

* gnu/tests/desktop.scm (run-elogind-test)["login on tty1"]: Wait for
'elogind in to 'term-tty1.
["screendump"]: New test.
Diffstat (limited to 'gnu/tests')
-rw-r--r--gnu/tests/desktop.scm12
1 files changed, 10 insertions, 2 deletions
diff --git a/gnu/tests/desktop.scm b/gnu/tests/desktop.scm
index 95b33da25e..137260ea93 100644
--- a/gnu/tests/desktop.scm
+++ b/gnu/tests/desktop.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017, 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2017, 2021, 2023 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2021 muradm <mail@muradm.net>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -62,7 +62,8 @@
               (marionette-eval
                '(begin
                   (use-modules (gnu services herd))
-                  (start-service 'term-tty1))
+                  (start-service 'term-tty1)
+                  (start-service 'elogind))
                marionette)
               (marionette-control "sendkey ctrl-alt-f1" marionette)
 
@@ -86,6 +87,13 @@
                       (guest-file "/root/seats")
                       (guest-file "/root/users")))))
 
+          (test-assert "screendump"
+            (begin
+              (let ((capture (string-append #$output "/tty1.ppm")))
+                (marionette-control
+                 (string-append "screendump " capture) marionette)
+                (file-exists? capture))))
+
           (test-end))))
 
   (gexp->derivation "elogind" test))