diff --git a/glance/notifier/notify_qpid.py b/glance/notifier/notify_qpid.py index e34db8f4..d3d55145 100644 --- a/glance/notifier/notify_qpid.py +++ b/glance/notifier/notify_qpid.py @@ -135,10 +135,16 @@ class QpidStrategy(strategy.Strategy): return self.session.sender(address) def warn(self, msg): - self.sender_warn.send(msg) + qpid_msg = qpid.messaging.Message(content=msg, + content_type='application/json') + self.sender_warn.send(qpid_msg) def info(self, msg): - self.sender_info.send(msg) + qpid_msg = qpid.messaging.Message(content=msg, + content_type='application/json') + self.sender_info.send(qpid_msg) def error(self, msg): - self.sender_error.send(msg) + qpid_msg = qpid.messaging.Message(content=msg, + content_type='application/json') + self.sender_error.send(qpid_msg) diff --git a/glance/tests/unit/test_notifier.py b/glance/tests/unit/test_notifier.py index 6eb374e1..0e7ff75e 100644 --- a/glance/tests/unit/test_notifier.py +++ b/glance/tests/unit/test_notifier.py @@ -15,6 +15,7 @@ # License for the specific language governing permissions and limitations # under the License. +import json import logging import unittest @@ -315,6 +316,8 @@ class TestQpidNotifier(unittest.TestCase): super(TestQpidNotifier, self).tearDown() def _test_notify(self, priority): + test_msg = json.dumps({'a': 'b'}) + self.mock_connection = self.mocker.CreateMock(self.orig_connection) self.mock_session = self.mocker.CreateMock(self.orig_session) self.mock_sender = self.mocker.CreateMock(self.orig_sender) @@ -328,18 +331,18 @@ class TestQpidNotifier(unittest.TestCase): '"type": "topic"}, "create": "always"}' % p) self.mock_session.sender(expected_address).AndReturn( self.mock_sender) - self.mock_sender.send('stuff') + self.mock_sender.send(mox.IgnoreArg()) self.mocker.ReplayAll() conf = utils.TestConfigOpts({"notifier_strategy": "qpid"}) notifier = self.notify_qpid.QpidStrategy(conf) - if priority == "info": - notifier.info("stuff") - elif priority == "warn": - notifier.warn("stuff") - elif priority == "error": - notifier.error("stuff") + if priority == 'info': + notifier.info(test_msg) + elif priority == 'warn': + notifier.warn(test_msg) + elif priority == 'error': + notifier.error(test_msg) self.mocker.VerifyAll()