def test_connection(self): config = self._setup_config() pika_string = 'socorro.external.rabbitmq.connection_context.pika' with patch(pika_string) as mocked_pika_module: conn_context_functor = ConnectionContext(config) conn = conn_context_functor.connection() mocked_pika_module.credentials.PlainCredentials \ .assert_called_once_with('guest', 'guest') mocked_pika_module.ConnectionParameters.assert_called_once_with( host=conn_context_functor.config.host, port=conn_context_functor.config.port, virtual_host=conn_context_functor.config.virtual_host, credentials=mocked_pika_module.credentials. \ PlainCredentials.return_value ) mocked_pika_module.BlockingConnection.assert_called_one_with( mocked_pika_module.ConnectionParameters.return_value ) self.assertTrue(isinstance(conn, Connection)) self.assertTrue(conn.config is config) self.assertTrue( conn.connection is mocked_pika_module.BlockingConnection.return_value ) self.assertTrue( conn.channel is conn.connection.channel.return_value ) expected_queue_declare_call_args = [ call(queue='dwight', durable=True), call(queue='wilma', durable=True), ] self.assertEqual( conn.channel.queue_declare.call_args_list, expected_queue_declare_call_args )
def test_call_and_close_connecton(self): config = self._setup_config() pika_string = 'socorro.external.rabbitmq.connection_context.pika' with patch(pika_string) as mocked_pika_module: conn_context_functor = ConnectionContext(config) with conn_context_functor() as conn_context: self.assertTrue(isinstance(conn_context, Connection)) conn_context.connection.close.assert_called_once_with()
def __init__(self, config): rabbitconfig = DotDict() rabbitconfig.host = config['rabbitMQHost'] rabbitconfig.port = config['rabbitMQPort'] rabbitconfig.virtual_host = config['rabbitMQVirtualhost'] rabbitconfig.rabbitmq_user = config['rabbitMQUsername'] rabbitconfig.rabbitmq_password = config['rabbitMQPassword'] rabbitconfig.standard_queue_name = config['rabbitMQStandardQueue'] rabbitconfig.priority_queue_name = config['rabbitMQPriorityQueue'] rabbitconfig.rabbitmq_connection_wrapper_class = Connection self.context = ConnectionContext(config=rabbitconfig)
def __init__(self, config): if 'rabbitmq' in config: # the normal configman case self.config = config.rabbitmq self.context = self.config.rabbitmq_class(self.config) else: # the old middleware case without configman rabbitconfig = DotDictWithAcquisition() rabbitconfig.host = config['rabbitMQHost'] rabbitconfig.port = config['rabbitMQPort'] rabbitconfig.virtual_host = config['rabbitMQVirtualhost'] rabbitconfig.rabbitmq_user = config['rabbitMQUsername'] rabbitconfig.rabbitmq_password = config['rabbitMQPassword'] rabbitconfig.standard_queue_name = config['rabbitMQStandardQueue'] rabbitconfig.priority_queue_name = config['rabbitMQPriorityQueue'] rabbitconfig.logger = logger self.config = rabbitconfig self.context = ConnectionContext(rabbitconfig)
def test_constructor(self): conn_context_functor = ConnectionContext(self._setup_config) self.assertTrue( conn_context_functor.config is conn_context_functor.local_config )