当前位置: 首页>>代码示例>>Python>>正文


Python Channel._inbound方法代码示例

本文整理汇总了Python中amqpstorm.Channel._inbound方法的典型用法代码示例。如果您正苦于以下问题:Python Channel._inbound方法的具体用法?Python Channel._inbound怎么用?Python Channel._inbound使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在amqpstorm.Channel的用法示例。


在下文中一共展示了Channel._inbound方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_channel_start_consuming

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_channel_start_consuming(self):
        self.msg = None
        consumer_tag = 'travis-ci'

        channel = Channel(0, FakeConnection(), 360)
        channel.set_state(channel.OPEN)

        message = self.message.encode('utf-8')
        message_len = len(message)

        deliver = specification.Basic.Deliver(consumer_tag='travis-ci')
        header = ContentHeader(body_size=message_len)
        body = ContentBody(value=message)

        channel._inbound = [deliver, header, body]

        def callback(msg):
            self.msg = msg
            channel.set_state(channel.CLOSED)

        channel.add_consumer_tag(consumer_tag)
        channel._consumer_callbacks['travis-ci'] = callback
        channel.start_consuming()

        self.assertIsNotNone(self.msg, 'No message consumed')
        self.assertIsInstance(self.msg.body, str)
        self.assertEqual(self.msg.body.encode('utf-8'), message)
开发者ID:eandersson,项目名称:amqpstorm,代码行数:29,代码来源:channel_message_handling_tests.py

示例2: test_channel_process_data_events_as_tuple

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_channel_process_data_events_as_tuple(self):
        self.msg = None

        channel = Channel(0, FakeConnection(), 360)
        channel.set_state(channel.OPEN)

        message = self.message.encode('utf-8')
        message_len = len(message)

        deliver = specification.Basic.Deliver(consumer_tag='travis-ci')
        header = ContentHeader(body_size=message_len)
        body = ContentBody(value=message)

        channel._inbound = [deliver, header, body]

        def callback(body, channel, method, properties):
            self.msg = (body, channel, method, properties)

        channel._consumer_callbacks['travis-ci'] = callback
        channel.process_data_events(to_tuple=True)

        self.assertIsNotNone(self.msg, 'No message consumed')

        body, channel, method, properties = self.msg

        self.assertIsInstance(body, bytes)
        self.assertIsInstance(channel, Channel)
        self.assertIsInstance(method, dict)
        self.assertIsInstance(properties, dict)
        self.assertEqual(body, message)
开发者ID:eandersson,项目名称:amqpstorm,代码行数:32,代码来源:channel_message_handling_tests.py

示例3: test_channel_raise_with_close_reply_code_500

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_channel_raise_with_close_reply_code_500(self):
        connection = FakeConnection()
        channel = Channel(0, connection, 360)

        # Set up Fake Channel.
        channel._inbound = [1, 2, 3]
        channel.set_state(channel.OPEN)
        channel._consumer_tags = [1, 2, 3]

        close_frame = specification.Channel.Close(
            reply_code=500,
            reply_text='travis-ci'
        )
        channel._close_channel(close_frame)

        self.assertEqual(channel._inbound, [])
        self.assertEqual(channel._consumer_tags, [])
        self.assertEqual(channel._state, channel.CLOSED)

        self.assertIsInstance(
            connection.get_last_frame(),
            specification.Channel.CloseOk
        )

        self.assertRaisesRegexp(
            AMQPChannelError,
            'Channel 0 was closed by remote server: travis-ci',
            channel.check_for_errors
        )
开发者ID:eandersson,项目名称:amqpstorm,代码行数:31,代码来源:channel_exception_tests.py

示例4: test_channel_build_message_headers_out_of_order

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_channel_build_message_headers_out_of_order(self):
        channel = Channel(0, Mock(name='Connection'), 360)

        deliver = specification.Basic.Deliver()
        header = ContentHeader(body_size=10)

        channel._inbound = [header, deliver]
        result = channel._build_message_headers()

        self.assertEqual(result, None)
        self.assertIn("Received an out-of-order frame:",
                      self.get_last_log())

        channel._inbound = [deliver, deliver]
        result = channel._build_message_headers()

        self.assertEqual(result, None)
        self.assertIn("Received an out-of-order frame:",
                      self.get_last_log())
开发者ID:eandersson,项目名称:amqpstorm,代码行数:21,代码来源:channel_message_handling_tests.py

示例5: test_build_message_body

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_build_message_body(self):
        channel = Channel(0, None, 360)

        message = b'Hello World!'
        message_len = len(message)

        body = ContentBody(value=message)
        channel._inbound = [body]
        result = channel._build_message_body(message_len)

        self.assertEqual(message, result)
开发者ID:gaochunzy,项目名称:amqp-storm,代码行数:13,代码来源:channel_tests.py

示例6: test_channel_build_message_body

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_channel_build_message_body(self):
        channel = Channel(0, Mock(name='Connection'), 360)

        message = self.message.encode('utf-8')
        message_len = len(message)

        body = ContentBody(value=message)
        channel._inbound = [body]
        result = channel._build_message_body(message_len)

        self.assertEqual(message, result)
开发者ID:eandersson,项目名称:amqpstorm,代码行数:13,代码来源:channel_message_handling_tests.py

示例7: test_channel_build_message_body_break_on_empty_value

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_channel_build_message_body_break_on_empty_value(self):
        channel = Channel(0, Mock(name='Connection'), 360)

        message = self.message
        message_len = len(message)

        body = ContentBody(value=b'')
        channel._inbound = [body]
        result = channel._build_message_body(message_len)

        self.assertEqual(result, b'')
开发者ID:eandersson,项目名称:amqpstorm,代码行数:13,代码来源:channel_message_handling_tests.py

示例8: test_channel_build_message_headers

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_channel_build_message_headers(self):
        channel = Channel(0, Mock(name='Connection'), 360)

        deliver = specification.Basic.Deliver()
        header = ContentHeader(body_size=10)

        channel._inbound = [deliver, header]
        result = channel._build_message_headers()

        self.assertIsInstance(result[0], specification.Basic.Deliver)
        self.assertIsInstance(result[1], ContentHeader)
        self.assertEqual(result[1].body_size, 10)
开发者ID:eandersson,项目名称:amqpstorm,代码行数:14,代码来源:channel_message_handling_tests.py

示例9: test_build_out_of_order_message

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_build_out_of_order_message(self):
        channel = Channel(0, None, 360)

        message = b'Hello World!'
        message_len = len(message)

        deliver = specification.Basic.Deliver()
        header = ContentHeader(body_size=message_len)
        body = ContentBody(value=message)

        channel._inbound = [deliver, deliver, header, body]
        result = channel._build_message()

        self.assertEqual(result, None)
开发者ID:gaochunzy,项目名称:amqp-storm,代码行数:16,代码来源:channel_tests.py

示例10: test_channel_close

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_channel_close(self):
        channel = Channel(0, None, 360)

        # Set up Fake Channel.
        channel._inbound = [1, 2, 3]
        channel.set_state(channel.OPEN)
        channel._consumer_tags = [1, 2, 3]

        # Close Channel.
        channel._close_channel(specification.Channel.Close(reply_text=''))

        self.assertEqual(channel._inbound, [])
        self.assertEqual(channel._consumer_tags, [])
        self.assertEqual(channel._state, channel.CLOSED)
开发者ID:exg77,项目名称:amqpstorm,代码行数:16,代码来源:channel_tests.py

示例11: test_build_inbound_messages

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_build_inbound_messages(self):
        channel = Channel(0, FakeConnection(), 360)
        channel.set_state(Channel.OPEN)

        message = b'Hello World!'
        message_len = len(message)

        deliver = specification.Basic.Deliver()
        header = ContentHeader(body_size=message_len)
        body = ContentBody(value=message)

        channel._inbound = [deliver, header, body]

        for message in channel.build_inbound_messages(break_on_empty=True):
            self.assertIsInstance(message, Message)
开发者ID:gaochunzy,项目名称:amqp-storm,代码行数:17,代码来源:channel_tests.py

示例12: test_channel_build_out_of_order_message_deliver

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_channel_build_out_of_order_message_deliver(self):
        channel = Channel(0, Mock(name='Connection'), 360)

        message = self.message
        message_len = len(message)

        deliver = specification.Basic.Deliver()
        header = ContentHeader(body_size=message_len)

        channel._inbound = [deliver, deliver, header]
        result = channel._build_message(auto_decode=True)

        self.assertEqual(result, None)
        self.assertIn("Received an out-of-order frame:",
                      self.get_last_log())
开发者ID:eandersson,项目名称:amqpstorm,代码行数:17,代码来源:channel_message_handling_tests.py

示例13: test_channel_build_message_auto_decode

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_channel_build_message_auto_decode(self):
        channel = Channel(0, Mock(name='Connection'), 360)

        message = self.message.encode('utf-8')
        message_len = len(message)

        deliver = specification.Basic.Deliver()
        header = ContentHeader(body_size=message_len)
        body = ContentBody(value=message)

        channel._inbound = [deliver, header, body]
        result = channel._build_message(auto_decode=True)

        self.assertIsInstance(result.body, str)
        self.assertEqual(result.body, message.decode('utf-8'))
开发者ID:eandersson,项目名称:amqpstorm,代码行数:17,代码来源:channel_message_handling_tests.py

示例14: test_close_channel

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_close_channel(self):
        channel = Channel(0, None, 360)

        # Set up Fake Channel.
        channel._inbound = [1, 2, 3]
        channel.set_state(channel.OPEN)
        channel._consumer_tags = [1, 2, 3]

        # Close Channel.
        # FixMe: Work around for reply_text not being a byte string
        # when not sent from RabbitMQ (i.e using the default pamqp message).
        channel._close_channel(specification.Channel.Close(reply_text=b''))

        self.assertEqual(channel._inbound, [])
        self.assertEqual(channel._consumer_tags, [])
        self.assertEqual(channel._state, channel.CLOSED)
开发者ID:gaochunzy,项目名称:amqp-storm,代码行数:18,代码来源:channel_tests.py

示例15: test_channel_build_message_empty_and_then_break

# 需要导入模块: from amqpstorm import Channel [as 别名]
# 或者: from amqpstorm.Channel import _inbound [as 别名]
    def test_channel_build_message_empty_and_then_break(self):
        """Start building a message with an empty inbound queue,
            and send an empty ContentBody that should be ignored.

        :return:
        """
        channel = Channel(0, FakeConnection(), 360)
        channel.set_state(Channel.OPEN)
        channel._inbound = []

        def add_inbound():
            channel._inbound.append(ContentBody())

        threading.Timer(function=add_inbound, interval=0.1).start()

        self.assertFalse(channel._build_message_body(128))
开发者ID:eandersson,项目名称:amqpstorm,代码行数:18,代码来源:channel_message_handling_tests.py


注:本文中的amqpstorm.Channel._inbound方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。