'Test behavior in the face of an exception from C{accept(2)}.
On any exception which indicates the platform is unable or unwilling
to allocate further resources to us, the existing port should remain
listening, a message should be logged, and the exception should not
propagate outward from doRead.
@param socketErrorNumber: The errno to simulate from accept.'

def _acceptFailureTest(self, socketErrorNumber):

    class FakeSocket(object, ):
        '\n                                                Pretend    to    be    a    socket    in    an    overloaded    system.\n                                                '
        def accept(self):
            raise socket.error(socketErrorNumber, os.strerror(socketErrorNumber))
    factory = ServerFactory()
    port = self.port(0, factory, interface='127.0.0.1')
    originalSocket = port.socket
    try:
        port.socket = FakeSocket()
        port.doRead()
        expectedFormat = 'Could    not    accept    new    connection    (%s)'
        expectedErrorCode = errno.errorcode[socketErrorNumber]
        expectedMessage = (expectedFormat % (expectedErrorCode,))
        for msg in self.messages:
            if (msg.get('message') == (expectedMessage,)):
                break
        else:
            self.fail(('Log    event    for    failed    accept    not    found    in    %r' % (self.messages,)))
    finally:
        port.socket = originalSocket
