本文整理汇总了Python中agentzero.core.SocketManager.disconnect方法的典型用法代码示例。如果您正苦于以下问题:Python SocketManager.disconnect方法的具体用法?Python SocketManager.disconnect怎么用?Python SocketManager.disconnect使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类agentzero.core.SocketManager
的用法示例。
在下文中一共展示了SocketManager.disconnect方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_socket_disconnect
# 需要导入模块: from agentzero.core import SocketManager [as 别名]
# 或者: from agentzero.core.SocketManager import disconnect [as 别名]
def test_socket_disconnect(get_by_name, register_socket, engage):
(
"SocketManager().disconnect() should get by name, unregister then "
"disconnect to the given address."
)
socket = get_by_name.return_value
# Given a zmq mock
zmq = Mock()
poller = zmq.Poller.return_value
# And a poller that raises an exception upon unregister
poller.unregister.side_effect = RuntimeError("boom")
# And a context
context = Mock()
# And a socket manager
manager = SocketManager(zmq, context)
manager.addresses = {"foobar": "baz", "another": "socket"}
# When I call disconnect
manager.disconnect("foobar").should.be.true
# Then it should have removed the socket address from the table
manager.addresses.should.equal({"another": "socket"})
socket.disconnect.assert_has_calls([call("baz")])
socket.disconnect.call_count.should.equal(1)
示例2: test_socket_manager_can_poll_asynchronously
# 需要导入模块: from agentzero.core import SocketManager [as 别名]
# 或者: from agentzero.core.SocketManager import disconnect [as 别名]
def test_socket_manager_can_poll_asynchronously():
(
"SocketManager should leverage a non-blocking socket "
"collection can be used seamlessly in a blocking fashion [TCP SOCKET]"
)
# Given a socket manager for a server
server = SocketManager(zmq, context)
# And a reply socket listening on a tcp port
server.ensure_and_bind(
"reply-server", zmq.REP, "tcp://0.0.0.0:3458", zmq.POLLIN | zmq.POLLOUT
)
# And a socket manager for a client
client = SocketManager(zmq, context)
# And a request client connected to the server
client.ensure_and_connect(
"request-client",
zmq.REQ,
"tcp://0.0.0.0:3458",
zmq.POLLIN | zmq.POLLOUT,
)
# And send a request from the client
requester = client.wait_until_ready(
"request-client", zmq.POLLOUT, timeout=2
)
requester.send_json({"client": 42})
# Then I should receive a request from the client
replier = server.wait_until_ready("reply-server", zmq.POLLIN, timeout=2)
replier.should_not.be.none
request = replier.recv_json()
# And the request should be the one that the client just sent
request.should.equal({"client": 42})
# And disconnecting should work
client.disconnect("request-client")
server.disconnect("reply-server")
示例3: test_socket_disconnect_not_available
# 需要导入模块: from agentzero.core import SocketManager [as 别名]
# 或者: from agentzero.core.SocketManager import disconnect [as 别名]
def test_socket_disconnect_not_available(get_by_name, register_socket, engage):
(
"SocketManager().disconnect() should return False if no sockets are available with that name"
)
# Background: get_by_name returns None
get_by_name.return_value = None
# Given a zmq mock
zmq = Mock()
# And a context
context = Mock()
manager = SocketManager(zmq, context)
# When I call disconnect
result = manager.disconnect("foobar")
# Then it should return false
result.should.be.false
示例4: test_socket_disconnect_not_registered
# 需要导入模块: from agentzero.core import SocketManager [as 别名]
# 或者: from agentzero.core.SocketManager import disconnect [as 别名]
def test_socket_disconnect_not_registered(get_by_name, register_socket, engage):
(
"SocketManager().disconnect() should return False if no sockets are registered with that name"
)
# Background: get_by_name returns None
socket = get_by_name.return_value
# Given a zmq mock
zmq = Mock()
# And a context
context = Mock()
# And a socket manager without registered sockets
manager = SocketManager(zmq, context)
manager.addresses = {}
# When I call disconnect
result = manager.disconnect("foobar")
# Then it should return true
result.should.be.true
# But socket.disconnect
socket.disconnect.call_count.should.equal(0)