Renamed GreenFile to Green_fileobject, better reflecting its purpose. This is kind of a documentation fix for #6.
This commit is contained in:
@@ -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)
|
||||||
|
@@ -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):
|
||||||
|
@@ -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):
|
||||||
|
Reference in New Issue
Block a user