gnu: offlineimap: Update to 7.0.12.
[jackhill/guix/guix.git] / gnu / packages / patches / guile-repl-server-test.patch
CommitLineData
8134dc1f
LC
1commit 8d6209ea56241bb1890c142539927c9ef3fb5a13
2Author: Ludovic Courtès <ludo@gnu.org>
3Date: Fri Nov 4 22:44:32 2016 +0100
4
5 tests: Throw 'unresolved when the REPL server is too slow.
6
7commit 2fbde7f02adb8c6585e9baf6e293ee49cd23d4c4
8Author: Ludovic Courtès <ludo@gnu.org>
9Date: Fri Nov 4 22:45:51 2016 +0100
10
11 tests: Avoid race condition in REPL server test.
12
13index ca389ba..4b5ec0c 100644
14--- a/test-suite/tests/00-repl-server.test
15+++ b/test-suite/tests/00-repl-server.test
16@@ -61,10 +61,11 @@ socket connected to that server."
17 (lambda ()
18 (connect client-socket sockaddr))
19 (lambda args
20- (when (and (memv (system-error-errno args)
21- (list ENOENT ECONNREFUSED))
22- (< tries 3))
23- (sleep 1)
24+ (when (memv (system-error-errno args)
25+ (list ENOENT ECONNREFUSED))
26+ (when (> tries 30)
27+ (throw 'unresolved))
28+ (usleep 100)
29 (loop (+ tries 1))))))
30
31 (proc client-socket))
32@@ -104,8 +105,14 @@ reached."
33 "scheme@(repl-server)> $1 = 42\n"
34 (with-repl-server socket
35 (read-until-prompt socket %last-line-before-prompt)
36- (display "(+ 40 2)\n(quit)\n" socket)
37- (read-string socket)))
38+
39+ ;; Wait until 'repl-reader' in boot-9 has written the prompt.
40+ ;; Otherwise, if we write too quickly, 'repl-reader' checks for
41+ ;; 'char-ready?' and doesn't print the prompt.
42+ (match (select (list socket) '() (list socket) 3)
43+ (((_) () ())
44+ (display "(+ 40 2)\n(quit)\n" socket)
45+ (read-string socket)))))
46
47 (pass-if "HTTP inter-protocol attack" ;CVE-2016-8606
48 (with-repl-server socket