本文整理汇总了Python中twisted.internet.error.ConnectionRefusedError方法的典型用法代码示例。如果您正苦于以下问题:Python error.ConnectionRefusedError方法的具体用法?Python error.ConnectionRefusedError怎么用?Python error.ConnectionRefusedError使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类twisted.internet.error
的用法示例。
在下文中一共展示了error.ConnectionRefusedError方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_updateMetadata_retry
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def test_updateMetadata_retry(self):
"""
Updating the broker metadata of the client changes the destination of
the next connection attempt. Any outstanding connections remain until
then.
"""
d = self.brokerClient.makeRequest(1, METADATA_REQUEST_1)
self.assertNoResult(d)
self.assertEqual([('host', 1234)], self.connections.calls)
self.brokerClient.updateMetadata(BrokerMetadata(node_id=1, host='other', port=2345))
self.assertEqual('other', self.brokerClient.host)
self.assertEqual(2345, self.brokerClient.port)
# A connection to the new host was *not* triggered.
self.assertEqual([('host', 1234)], self.connections.calls)
# Fail the pending connection:
self.connections.fail('host', ConnectionRefusedError("Nope."))
# Trigger retry attempt, which happens after a delay:
self.reactor.advance(self.retryDelay)
# The retry attempt was made to the new host.
self.assertEqual([('host', 1234), ('other', 2345)], self.connections.calls)
示例2: test_onlyRetryIfNoResponseReceived
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def test_onlyRetryIfNoResponseReceived(self):
"""
Only L{RequestNotSent}, L{RequestTransmissionFailed} and
L{ResponseNeverReceived} exceptions cause a retry.
"""
pool = client.HTTPConnectionPool(None)
connection = client._RetryingHTTP11ClientProtocol(None, pool)
self.assertTrue(connection._shouldRetry(
b"GET", RequestNotSent(), None))
self.assertTrue(connection._shouldRetry(
b"GET", RequestTransmissionFailed([]), None))
self.assertTrue(connection._shouldRetry(
b"GET", ResponseNeverReceived([]),None))
self.assertFalse(connection._shouldRetry(
b"GET", ResponseFailed([]), None))
self.assertFalse(connection._shouldRetry(
b"GET", ConnectionRefusedError(), None))
示例3: test_directConnectionLostCall
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def test_directConnectionLostCall(self):
"""
If C{connectionLost} is called directly on a port object, it succeeds
(and doesn't expect the presence of a C{deferred} attribute).
C{connectionLost} is called by L{reactor.disconnectAll} at shutdown.
"""
serverFactory = MyServerFactory()
port = reactor.listenTCP(0, serverFactory, interface="127.0.0.1")
portNumber = port.getHost().port
port.connectionLost(None)
client = MyClientFactory()
serverFactory.protocolConnectionMade = defer.Deferred()
client.protocolConnectionMade = defer.Deferred()
reactor.connectTCP("127.0.0.1", portNumber, client)
def check(ign):
client.reason.trap(error.ConnectionRefusedError)
return client.failDeferred.addCallback(check)
示例4: test_connectionFailed
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def test_connectionFailed(self):
"""
If a connection cannot be established, the L{Deferred} returned by
L{SSHCommandClientEndpoint.connect} fires with a L{Failure}
representing the reason for the connection setup failure.
"""
endpoint = SSHCommandClientEndpoint.newConnection(
self.reactor, b"/bin/ls -l", b"dummy user",
self.hostname, self.port, knownHosts=self.knownHosts,
ui=FixedResponseUI(False))
factory = Factory()
factory.protocol = Protocol
d = endpoint.connect(factory)
factory = self.reactor.tcpClients[0][2]
factory.clientConnectionFailed(None, Failure(ConnectionRefusedError()))
self.failureResultOf(d).trap(ConnectionRefusedError)
示例5: setUp
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def setUp(self):
"""
Setup fake hook-up between pods
"""
@inlineCallbacks
def _fakeSubmitRequest(iself, ssl, host, port, request):
if self.refuseConnection:
raise MultiFailure((Failure(ConnectionRefusedError()),))
else:
pod = (port - 8008) / 100
inbox = IScheduleInboxResource(self.site.resource, self.theStoreUnderTest(pod), podding=True)
response = yield inbox.http_POST(SimpleRequest(
self.site,
"POST",
"http://{host}:{port}/podding".format(host=host, port=port),
request.headers,
request.stream.mem,
))
returnValue(response)
self.refuseConnection = False
self.patch(IScheduleRequest, "_submitRequest", _fakeSubmitRequest)
yield super(TestCrossPodScheduling, self).setUp()
示例6: test_all_deferreds
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def test_all_deferreds(self):
# point at a URL that will never connect
port = allocate_tcp_port()
w = wormhole.create(APPID, "ws://127.0.0.1:%d/v1" % port, reactor)
# nothing is listening, but it will take a turn to discover that
w.allocate_code()
d1 = w.get_code()
d2 = w.get_unverified_key()
d3 = w.get_verifier()
d4 = w.get_versions()
d5 = w.get_message()
yield self.assertSCE(d1, ConnectionRefusedError)
yield self.assertSCE(d2, ConnectionRefusedError)
yield self.assertSCE(d3, ConnectionRefusedError)
yield self.assertSCE(d4, ConnectionRefusedError)
yield self.assertSCE(d5, ConnectionRefusedError)
示例7: test_reconnect
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def test_reconnect(self):
"""
Calling L{IConnector.connect} in C{Factory.clientConnectionLost} causes
a new connection attempt to be made.
"""
serverFactory = ClosingFactory()
tcpPort = reactor.listenTCP(0, serverFactory, interface="127.0.0.1")
serverFactory.port = tcpPort
self.addCleanup(serverFactory.cleanUp)
portNumber = tcpPort.getHost().port
clientFactory = MyClientFactory()
def clientConnectionLost(connector, reason):
connector.connect()
clientFactory.clientConnectionLost = clientConnectionLost
reactor.connectTCP("127.0.0.1", portNumber, clientFactory)
d = loopUntil(lambda: clientFactory.failed)
def reconnectFailed(ignored):
p = clientFactory.protocol
self.assertEqual((p.made, p.closed), (1, 1))
clientFactory.reason.trap(error.ConnectionRefusedError)
self.assertEqual(clientFactory.stopped, 1)
return d.addCallback(reconnectFailed)
示例8: testReconnect
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def testReconnect(self):
f = ClosingFactory()
p = reactor.listenTCP(0, f, interface="127.0.0.1")
n = p.getHost().port
self.ports.append(p)
f.port = p
factory = MyClientFactory()
d = loopUntil(lambda :p.connected)
def step1(ignored):
def clientConnectionLost(c, reason):
c.connect()
factory.clientConnectionLost = clientConnectionLost
reactor.connectTCP("127.0.0.1", n, factory)
return loopUntil(lambda :factory.failed)
def step2(ignored):
p = factory.protocol
self.assertEquals((p.made, p.closed), (1, 1))
factory.reason.trap(error.ConnectionRefusedError)
self.assertEquals(factory.stopped, 1)
return self.cleanPorts(*self.ports)
return d.addCallback(step1).addCallback(step2)
示例9: test_update_connections_connect_error_is_logged_tersely
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def test_update_connections_connect_error_is_logged_tersely(self):
service = ClusterClientService(Clock())
_make_connection = self.patch(service, "_make_connection")
_make_connection.side_effect = error.ConnectionRefusedError()
logger = self.useFixture(TwistedLoggerFixture())
eventloops = {"an-event-loop": [("127.0.0.1", 1234)]}
yield service._update_connections(eventloops)
self.assertThat(
_make_connection,
MockCalledOnceWith("an-event-loop", ("::ffff:127.0.0.1", 1234)),
)
self.assertEqual(
"Making connections to event-loops: an-event-loop\n"
"---\n"
"Event-loop an-event-loop (::ffff:127.0.0.1:1234): Connection "
"was refused by other side.",
logger.dump(),
)
示例10: handleCmdConnectFailure
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def handleCmdConnectFailure(self, failure):
log.error("CMD CONNECT: %s" % failure.getErrorMessage())
# Map common twisted errors to SOCKS error codes
if failure.type == error.NoRouteError:
self.sendReply(SOCKSv5Reply.NetworkUnreachable)
elif failure.type == error.ConnectionRefusedError:
self.sendReply(SOCKSv5Reply.ConnectionRefused)
elif failure.type == error.TCPTimedOutError or failure.type == error.TimeoutError:
self.sendReply(SOCKSv5Reply.TTLExpired)
elif failure.type == error.UnsupportedAddressFamily:
self.sendReply(SOCKSv5Reply.AddressTypeNotSupported)
elif failure.type == error.ConnectError:
# Twisted doesn't have a exception defined for EHOSTUNREACH,
# so the failure is a ConnectError. Try to catch this case
# and send a better reply, but fall back to a GeneralFailure.
reply = SOCKSv5Reply.GeneralFailure
try:
import errno
if hasattr(errno, "EHOSTUNREACH"):
if failure.value.osError == errno.EHOSTUNREACH:
reply = SOCKSv5Reply.HostUnreachable
if hasattr(errno, "WSAEHOSTUNREACH"):
if failure.value.osError == errno.WSAEHOSTUNREACH:
reply = SOCKSv5Reply.HostUnreachable
except Exception:
pass
self.sendReply(reply)
else:
self.sendReply(SOCKSv5Reply.GeneralFailure)
failure.trap(error.NoRouteError, error.ConnectionRefusedError,
error.TCPTimedOutError, error.TimeoutError,
error.UnsupportedAddressFamily, error.ConnectError)
示例11: test_CmdConnectErrback
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def test_CmdConnectErrback(self):
"""
Test Unsuccessful Request with a IPv4 CONNECT.
"""
self.proto.connectClass = self._connectClassIPv4
# VER = 05, CMD = 01, RSV = 00, ATYPE = 01, DST.ADDR = 127.0.0.1, DST.PORT = 9050
self._sendMsg("050100017f000001235a")
self.connectDeferred.errback(Failure(error.ConnectionRefusedError("Foo")))
self._recvFailureResponse(socks5.SOCKSv5Reply.ConnectionRefused)
self.assertFalse(self.tr.connected)
示例12: test_connectionFailed
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def test_connectionFailed(self):
"""
The L{Deferred} returned by L{Agent.request} fires with a L{Failure} if
the TCP connection attempt fails.
"""
result = self.agent.request(b'GET', b'http://foo/')
# Cause the connection to be refused
host, port, factory = self.reactor.tcpClients.pop()[:3]
factory.clientConnectionFailed(None, Failure(ConnectionRefusedError()))
self.reactor.advance(10)
# ^ https://twistedmatrix.com/trac/ticket/8202
self.failureResultOf(result, ConnectionRefusedError)
示例13: test_errno
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def test_errno(self):
"""
L{error.getConnectError} converts based on errno for C{socket.error}.
"""
self.assertErrnoException(errno.ENETUNREACH, error.NoRouteError)
self.assertErrnoException(errno.ECONNREFUSED, error.ConnectionRefusedError)
self.assertErrnoException(errno.ETIMEDOUT, error.TCPTimedOutError)
if platformType == "win32":
self.assertErrnoException(errno.WSAECONNREFUSED, error.ConnectionRefusedError)
self.assertErrnoException(errno.WSAENETUNREACH, error.NoRouteError)
示例14: testFailing
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def testFailing(self):
clientF = MyClientFactory()
# XXX we assume no one is listening on TCP port 69
reactor.connectTCP("127.0.0.1", 69, clientF, timeout=5)
def check(ignored):
clientF.reason.trap(error.ConnectionRefusedError)
return clientF.failDeferred.addCallback(check)
示例15: connectionRefused
# 需要导入模块: from twisted.internet import error [as 别名]
# 或者: from twisted.internet.error import ConnectionRefusedError [as 别名]
def connectionRefused(self):
if self.startedDeferred is not None:
d, self.startedDeferred = self.startedDeferred, None
d.errback(error.ConnectionRefusedError("yup"))
self.refused = 1