Soft failure for Win32 and Mac platforms. Less output unless verbose.

This commit is contained in:
Guido van Rossum 1997-04-16 00:29:59 +00:00
parent cc5a91dc4f
commit 684480f419
1 changed files with 12 additions and 3 deletions

View File

@ -1,4 +1,5 @@
# Testing select module # Testing select module
from test_support import verbose
import select import select
import os import os
@ -33,19 +34,27 @@ else:
def test(): def test():
import sys
if sys.platform in ('win', 'mac'):
if verbose:
print "Can't test select easily"
return
cmd = 'for i in 0 1 2 3 4 5 6 7 8 9; do echo testing...; sleep 1; done' cmd = 'for i in 0 1 2 3 4 5 6 7 8 9; do echo testing...; sleep 1; done'
p = os.popen(cmd, 'r') p = os.popen(cmd, 'r')
for tout in (0, 1, 2, 4, 8, 16) + (None,)*10: for tout in (0, 1, 2, 4, 8, 16) + (None,)*10:
print 'timeout =', tout if verbose:
print 'timeout =', tout
rfd, wfd, xfd = select.select([p], [], [], tout) rfd, wfd, xfd = select.select([p], [], [], tout)
## print rfd, wfd, xfd ## print rfd, wfd, xfd
if (rfd, wfd, xfd) == ([], [], []): if (rfd, wfd, xfd) == ([], [], []):
continue continue
if (rfd, wfd, xfd) == ([p], [], []): if (rfd, wfd, xfd) == ([p], [], []):
line = p.readline() line = p.readline()
print `line` if verbose:
print `line`
if not line: if not line:
print 'EOF' if verbose:
print 'EOF'
break break
continue continue
print 'Heh?' print 'Heh?'