@@ -152,43 +152,43 @@ (define (run-xvnc-test)
| grep -Fq nothing"))
marionette))
- (test-assert "vnc lands on the gdm login screen"
+ (test-group "vnc lands on the gdm login screen"
;; This test runs vncviewer on the local VM and verifies that it
;; manages to access the GDM login screen (via XDMCP).
- (begin
- (define (ratpoison-abort)
- (marionette-control "sendkey ctrl-g" marionette))
-
- (define (ratpoison-help)
- (marionette-control "sendkey ctrl-t" marionette)
- (marionette-type "?" marionette)
- (sleep 1)) ;wait for help screen to appear
-
- (define (ratpoison-exec command)
- (marionette-control "sendkey ctrl-t" marionette)
- (marionette-type "!" marionette)
- (marionette-type (string-append command "\n") marionette))
-
- ;; Wait until the ratpoison help screen can be displayed; this
- ;; means the window manager is ready.
+ (define (ratpoison-abort)
+ (marionette-control "sendkey ctrl-g" marionette))
+
+ (define (ratpoison-help)
+ (marionette-control "sendkey ctrl-t" marionette)
+ (marionette-type "?" marionette)
+ (sleep 1)) ;wait for help screen to appear
+
+ (define (ratpoison-exec command)
+ (marionette-control "sendkey ctrl-t" marionette)
+ (marionette-type "!" marionette)
+ (marionette-type (string-append command "\n") marionette))
+
+ ;; Wait until the ratpoison help screen can be displayed; this
+ ;; means the window manager is ready.
+ ;; XXX: GNU Ocrad 0.28 yields poor results here, use tesseract
+ ;; instead.
+ (test-assert "window manager is ready"
(wait-for-screen-text marionette
(cut string-contains <> "key bindings")
#:ocr #$(file-append tesseract-ocr
"/bin/tesseract")
#:pre-action ratpoison-help
- #:post-action ratpoison-abort)
+ #:post-action ratpoison-abort))
;; Run vncviewer and expect the GDM login screen (accessed via
;; XDMCP). This can take a while to appear on slower machines.
- (ratpoison-exec "vncviewer localhost:5905")
- ;; XXX: tesseract narrowly recognizes "Guix" as "uix" from the
- ;; background image; ocrad fares worst. Sadly, 'Username' is
- ;; not recognized at all.
+ (ratpoison-exec "vncviewer localhost:5905")
+
+ (test-assert "GDM login screen ready"
(wait-for-screen-text marionette
- (cut string-contains <> "uix")
- #:ocr #$(file-append tesseract-ocr
- "/bin/tesseract")
- #:timeout 120)))
+ (cut string-contains <> "Guix")
+ #:ocr #$(file-append ocrad "/bin/ocrad")
+ #:ocr-arguments "--invert")))
(test-end)))))