def create_nonapi_server(node_id, policy_engine, datasources, workers): congress_server = eventlet_server.Server( node_id, bus_id=cfg.CONF.dse.bus_id) harness.create2(existing_node=congress_server.node, api=False, policy_engine=policy_engine, datasources=datasources) return node_id, ServerWrapper(congress_server, workers)
def create_api_server(conf, name, host, port, workers): app = deploy.loadapp('config:%s' % conf, name=name) congress_api_server = eventlet_server.Server( app, host=host, port=port, keepalive=cfg.CONF.tcp_keepalive, keepidle=cfg.CONF.tcp_keepidle) return name, ServerWrapper(congress_api_server, workers)
def test_keepalive_unset(self, mock_getaddrinfo, mock_listen): mock_getaddrinfo.return_value = [(1, 2, 3, 4, 5)] mock_sock = mock.Mock() mock_sock.setsockopt = mock.Mock() mock_listen.return_value = mock_sock server = eventlet_server.Server(mock.MagicMock(), host=cfg.CONF.bind_host, port=cfg.CONF.bind_port) server.start() self.assertTrue(mock_listen.called) self.assertFalse(mock_sock.setsockopt.called)
def test_keepalive_set(self, mock_getaddrinfo, mock_listen): mock_getaddrinfo.return_value = [(1, 2, 3, 4, 5)] mock_sock = mock.Mock() mock_sock.setsockopt = mock.Mock() mock_listen.return_value = mock_sock server = eventlet_server.Server(mock.MagicMock(), host=cfg.CONF.bind_host, port=cfg.CONF.bind_port, keepalive=True) server.start() mock_sock.setsockopt.assert_called_once_with(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1) self.assertTrue(mock_listen.called)
def test_keepalive_and_keepidle_set(self, mock_getaddrinfo, mock_listen): mock_getaddrinfo.return_value = [(1, 2, 3, 4, 5)] mock_sock = mock.Mock() mock_sock.setsockopt = mock.Mock() mock_listen.return_value = mock_sock server = eventlet_server.Server(mock.MagicMock(), host=cfg.CONF.bind_host, port=cfg.CONF.bind_port, keepalive=True, keepidle=1) server.start() # keepidle isn't available in the OS X version of eventlet if hasattr(socket, 'TCP_KEEPIDLE'): self.assertEqual(mock_sock.setsockopt.call_count, 2) # Test the last set of call args i.e. for the keepidle mock_sock.setsockopt.assert_called_with(socket.IPPROTO_TCP, socket.TCP_KEEPIDLE, 1) else: self.assertEqual(mock_sock.setsockopt.call_count, 1) self.assertTrue(mock_listen.called)