summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArtyom V. Poptsov <poptsov.artyom@gmail.com>2016-05-03 10:33:45 +0400
committerArtyom V. Poptsov <poptsov.artyom@gmail.com>2016-05-03 10:33:45 +0400
commit4a03f2107bcd0005ccd242a83c5b4c852d8aba32 (patch)
treea91e93f4a55306ec49984a0bb251e56b53c630a2
parenttests/common.scm (run-client-test): Add extra logging (diff)
downloadguile-ssh-4a03f2107bcd0005ccd242a83c5b4c852d8aba32.tar.gz
tests/client-server.scm (make-session/channel-test): Improve
* tests/client-server.scm (make-session/channel-test): Try to connect several times before giving up. Improve logging.
-rw-r--r--tests/client-server.scm30
1 files changed, 24 insertions, 6 deletions
diff --git a/tests/client-server.scm b/tests/client-server.scm
index 1e0fd94..e8e8ea0 100644
--- a/tests/client-server.scm
+++ b/tests/client-server.scm
@@ -382,12 +382,30 @@
(define (make-session/channel-test)
"Make a session for a channel test."
- (let ((session (make-session-for-test)))
- (sleep 1)
- (connect! session)
- (authenticate-server session)
- (userauth-none! session)
- session))
+ (define max-tries 30)
+ (let loop ((session (make-session-for-test))
+ (count max-tries))
+ (if (not (eq? (connect! session) 'ok))
+ (begin
+ (format-log/scm 'nolog
+ "make-session/channel-test"
+ "Unable to connect in ~d tries: ~a~%"
+ (- max-tries count)
+ session)
+ (disconnect! session)
+ (set! session #f)
+ (sleep 1)
+ (if (zero? count)
+ (format-log/scm 'nolog
+ "make-session/channel-test"
+ "~a"
+ "Giving up ...")
+ (loop (make-session-for-test)
+ (1- count))))
+ (begin
+ (authenticate-server session)
+ (userauth-none! session)
+ session))))
(test-assert "make-channel"
(run-client-test