aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-01-21 00:16:48 +0100
committerLudovic Courtès <ludo@gnu.org>2018-01-21 00:24:03 +0100
commitbc58201ec22aeb07b61dc1e482d6a57868436eef (patch)
tree220e93d7d25f73afcd44ff166fc9ac0221967568
parent33033a620e64d64bc549b4472e2f4db61e801d18 (diff)
downloadpatches-bc58201ec22aeb07b61dc1e482d6a57868436eef.tar
patches-bc58201ec22aeb07b61dc1e482d6a57868436eef.tar.gz
tests: Cgit test waits for /var/run/shepherd/socket.
Previously tests sometimes start before the shepherd was listening, leading to test failures. * gnu/tests/version-control.scm (run-cgit-test)[test]: Add "shepherd socket ready" test. Rename to two "service running" tests for clarity.
-rw-r--r--gnu/tests/version-control.scm23
1 files changed, 20 insertions, 3 deletions
diff --git a/gnu/tests/version-control.scm b/gnu/tests/version-control.scm
index 7367861b05..c20e59985e 100644
--- a/gnu/tests/version-control.scm
+++ b/gnu/tests/version-control.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
-;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;;
;;; This file is part of GNU Guix.
@@ -130,8 +130,25 @@ HTTP-PORT."
(test-begin "cgit")
+ ;; XXX: Shepherd reads the config file *before* binding its control
+ ;; socket, so /var/run/shepherd/socket might not exist yet when the
+ ;; 'marionette' service is started.
+ (test-assert "shepherd socket ready"
+ (marionette-eval
+ `(begin
+ (use-modules (gnu services herd))
+ (let loop ((i 10))
+ (cond ((file-exists? (%shepherd-socket-file))
+ #t)
+ ((> i 0)
+ (sleep 1)
+ (loop (- i 1)))
+ (else
+ 'failure))))
+ marionette))
+
;; Wait for nginx to be up and running.
- (test-eq "service running"
+ (test-eq "nginx running"
'running!
(marionette-eval
'(begin
@@ -141,7 +158,7 @@ HTTP-PORT."
marionette))
;; Wait for fcgiwrap to be up and running.
- (test-eq "service running"
+ (test-eq "fcgiwrap running"
'running!
(marionette-eval
'(begin