Renamed GreenFile to Green_fileobject, better reflecting its purpose. This is kind of a documentation fix for #6.

This commit is contained in:
Ryan Williams
2009-12-05 13:27:55 -08:00
parent 1a5ce57587
commit def5bb8e8f
3 changed files with 14 additions and 7 deletions

View File

@@ -14,7 +14,7 @@ import warnings
from errno import EWOULDBLOCK, EAGAIN from errno import EWOULDBLOCK, EAGAIN
__all__ = ['GreenSocket', 'GreenFile', 'GreenPipe'] __all__ = ['GreenSocket', 'GreenPipe']
def higher_order_recv(recv_func): def higher_order_recv(recv_func):
def recv(self, buflen, flags=0): def recv(self, buflen, flags=0):
@@ -302,7 +302,7 @@ class GreenSocket(object):
return socket._fileobject(self.dup(), mode, bufsize) return socket._fileobject(self.dup(), mode, bufsize)
def makeGreenFile(self, mode='r', bufsize=-1): def makeGreenFile(self, mode='r', bufsize=-1):
return GreenFile(self.dup()) return Green_fileobject(self.dup())
recv = higher_order_recv(socket_recv) recv = higher_order_recv(socket_recv)
@@ -370,8 +370,9 @@ class GreenSocket(object):
return self.timeout return self.timeout
class Green_fileobject(object):
class GreenFile(object): """Green version of socket._fileobject, for use only with regular
sockets."""
newlines = '\r\n' newlines = '\r\n'
mode = 'wb+' mode = 'wb+'
@@ -494,7 +495,7 @@ class GreenPipeSocket(GreenSocket):
send = higher_order_send(file_send) send = higher_order_send(file_send)
class GreenPipe(GreenFile): class GreenPipe(Green_fileobject):
def __init__(self, fd): def __init__(self, fd):
set_nonblocking(fd) set_nonblocking(fd)
self.fd = GreenPipeSocket(fd) self.fd = GreenPipeSocket(fd)

View File

@@ -200,7 +200,7 @@ def setup():
csock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) csock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
nsock, addr = sock.accept() nsock, addr = sock.accept()
nsock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) nsock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
_rfile = greenio.GreenFile(greenio.GreenSocket(csock)) _rfile = greenio.Green_fileobject(greenio.GreenSocket(csock))
_wfile = nsock.makefile() _wfile = nsock.makefile()
for i in range(0,_nthreads): for i in range(0,_nthreads):

View File

@@ -2,6 +2,7 @@ from tests import skipped, LimitedTestCase, skip_with_libevent, TestIsTakingTooL
from unittest import main from unittest import main
from eventlet import api, util, coros, proc, greenio from eventlet import api, util, coros, proc, greenio
from eventlet.green.socket import GreenSSLObject from eventlet.green.socket import GreenSSLObject
import errno
import os import os
import socket import socket
import sys import sys
@@ -33,7 +34,12 @@ class TestGreenIo(LimitedTestCase):
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(0.1) s.settimeout(0.1)
gs = greenio.GreenSocket(s) gs = greenio.GreenSocket(s)
self.assertRaises(socket.timeout, gs.connect, ('192.0.2.1', 80)) try:
self.assertRaises(socket.timeout, gs.connect, ('192.0.2.1', 80))
except socket.error, e:
# unreachable is also a valid outcome
if e[0] != errno.EHOSTUNREACH:
raise
def test_close_with_makefile(self): def test_close_with_makefile(self):
def accept_close_early(listener): def accept_close_early(listener):