)]}'
{"tests/drivers/test_matchmaker.py":[{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"439afeac732791af77c3ffb5ac8a7a9cb0e947b0","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"# NOTE(jamespage) matchmaker tied directly to eventlet"},{"line_number":21,"context_line":"# which is not yet py3 compatible - skip if import fails"},{"line_number":22,"context_line":"matchmaker \u003d \\"},{"line_number":23,"context_line":"    importutils.try_import(\u0027oslo.messaging._drivers.matchmaker\u0027)"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_d2353d47","line":22,"updated":"2014-10-31 14:18:48.000000000","message":"could you please find more appropriate line formatting?\nuse of \\ is a bash coding style, there are several \"pythonic\" ways to do this.","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":935,"name":"James Page","email":"ringo.page@gmail.com","username":"james-page"},"change_message_id":"be4d81d89261c0bc125af33fdbecef826728f713","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"# NOTE(jamespage) matchmaker tied directly to eventlet"},{"line_number":21,"context_line":"# which is not yet py3 compatible - skip if import fails"},{"line_number":22,"context_line":"matchmaker \u003d \\"},{"line_number":23,"context_line":"    importutils.try_import(\u0027oslo.messaging._drivers.matchmaker\u0027)"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_5e6236d9","line":22,"in_reply_to":"7a8c0949_d2353d47","updated":"2014-10-31 16:02:58.000000000","message":"Done","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"}],"tests/drivers/test_matchmaker_redis.py":[{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"3689811932c07b22c6e2059b8b0fd5150b1109a0","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"def redis_available():"},{"line_number":29,"context_line":"    \u0027\u0027\u0027Helper to see if local redis server is running\u0027\u0027\u0027"},{"line_number":30,"context_line":"    try:"},{"line_number":31,"context_line":"        socket.create_connection((\u0027127.0.0.1\u0027, 6379), 3)"},{"line_number":32,"context_line":"        return True"}],"source_content_type":"text/x-python","patch_set":3,"id":"baa201ad_fa9c7910","line":29,"updated":"2014-10-14 23:35:18.000000000","message":"Why not just use the redis client to do this directly?\n\n  \u003e\u003e\u003e c \u003d redis.StrictRedis(socket_timeout\u003d1)\n  \u003e\u003e\u003e c.ping()\n\nIf the above doesn\u0027t blow up, assume redis is working...\n\nExample blowup:\n\n  \u003e\u003e\u003e redis.exceptions.ConnectionError: Error 111 connecting to localhost:6379. Connection refused.","commit_id":"0a93faaf5e3d8df6fa9306f0449b618ff6a6be2d"},{"author":{"_account_id":935,"name":"James Page","email":"ringo.page@gmail.com","username":"james-page"},"change_message_id":"31aed916631989e2559f1850f2ea28d55b468f7d","unresolved":false,"context_lines":[{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"def redis_available():"},{"line_number":29,"context_line":"    \u0027\u0027\u0027Helper to see if local redis server is running\u0027\u0027\u0027"},{"line_number":30,"context_line":"    try:"},{"line_number":31,"context_line":"        socket.create_connection((\u0027127.0.0.1\u0027, 6379), 3)"},{"line_number":32,"context_line":"        return True"}],"source_content_type":"text/x-python","patch_set":3,"id":"baa201ad_9270aa73","line":29,"in_reply_to":"baa201ad_fa9c7910","updated":"2014-10-15 09:06:20.000000000","message":"Thats a good idea; I\u0027ll rework on my next update to use that.","commit_id":"0a93faaf5e3d8df6fa9306f0449b618ff6a6be2d"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"439afeac732791af77c3ffb5ac8a7a9cb0e947b0","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"redis \u003d importutils.try_import(\u0027redis\u0027)"},{"line_number":21,"context_line":"matchmaker_redis \u003d \\"},{"line_number":22,"context_line":"    importutils.try_import(\u0027oslo.messaging._drivers.matchmaker_redis\u0027)"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"def redis_available():"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_3223e106","line":22,"updated":"2014-10-31 14:18:48.000000000","message":"same","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":935,"name":"James Page","email":"ringo.page@gmail.com","username":"james-page"},"change_message_id":"be4d81d89261c0bc125af33fdbecef826728f713","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"redis \u003d importutils.try_import(\u0027redis\u0027)"},{"line_number":21,"context_line":"matchmaker_redis \u003d \\"},{"line_number":22,"context_line":"    importutils.try_import(\u0027oslo.messaging._drivers.matchmaker_redis\u0027)"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"def redis_available():"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_9e9bbec8","line":22,"in_reply_to":"7a8c0949_3223e106","updated":"2014-10-31 16:02:58.000000000","message":"Done","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":7805,"name":"Li Ma","email":"skywalker.nick@gmail.com","username":"Nick"},"change_message_id":"b0e2bf83862645a313c03b1ef76621ef64c9f832","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"@testtools.skipIf(not matchmaker_redis, \"matchmaker/eventlet unavailable\")"},{"line_number":38,"context_line":"@testtools.skipIf(not redis_available(), \"redis unavailable\")"},{"line_number":39,"context_line":"class RedisMatchMaker(test_utils.BaseTestCase):"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def setUp(self):"},{"line_number":42,"context_line":"        super(RedisMatchMaker, self).setUp()"}],"source_content_type":"text/x-python","patch_set":4,"id":"9aa7fdbe_4c468050","line":39,"updated":"2014-10-25 13:53:06.000000000","message":"Nit: rename class name to RedisMatchMakerTest is more suitable.","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"439afeac732791af77c3ffb5ac8a7a9cb0e947b0","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"@testtools.skipIf(not matchmaker_redis, \"matchmaker/eventlet unavailable\")"},{"line_number":38,"context_line":"@testtools.skipIf(not redis_available(), \"redis unavailable\")"},{"line_number":39,"context_line":"class RedisMatchMaker(test_utils.BaseTestCase):"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def setUp(self):"},{"line_number":42,"context_line":"        super(RedisMatchMaker, self).setUp()"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_9279f5fe","line":39,"in_reply_to":"9aa7fdbe_4c468050","updated":"2014-10-31 14:18:48.000000000","message":"+1","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":935,"name":"James Page","email":"ringo.page@gmail.com","username":"james-page"},"change_message_id":"be4d81d89261c0bc125af33fdbecef826728f713","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"@testtools.skipIf(not matchmaker_redis, \"matchmaker/eventlet unavailable\")"},{"line_number":38,"context_line":"@testtools.skipIf(not redis_available(), \"redis unavailable\")"},{"line_number":39,"context_line":"class RedisMatchMaker(test_utils.BaseTestCase):"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def setUp(self):"},{"line_number":42,"context_line":"        super(RedisMatchMaker, self).setUp()"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_dea54605","line":39,"in_reply_to":"9aa7fdbe_4c468050","updated":"2014-10-31 16:02:58.000000000","message":"Done","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":7805,"name":"Li Ma","email":"skywalker.nick@gmail.com","username":"Nick"},"change_message_id":"b0e2bf83862645a313c03b1ef76621ef64c9f832","unresolved":false,"context_lines":[{"line_number":39,"context_line":"class RedisMatchMaker(test_utils.BaseTestCase):"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def setUp(self):"},{"line_number":42,"context_line":"        super(RedisMatchMaker, self).setUp()"},{"line_number":43,"context_line":"        self.ring_data \u003d {"},{"line_number":44,"context_line":"            \"conductor\": [\"controller1\", \"node1\", \"node2\", \"node3\"],"},{"line_number":45,"context_line":"            \"scheduler\": [\"controller1\", \"node1\", \"node2\", \"node3\"],"}],"source_content_type":"text/x-python","patch_set":4,"id":"9aa7fdbe_6c76e4a5","line":42,"updated":"2014-10-25 13:53:06.000000000","message":"the same to the previous comment.","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":935,"name":"James Page","email":"ringo.page@gmail.com","username":"james-page"},"change_message_id":"be4d81d89261c0bc125af33fdbecef826728f713","unresolved":false,"context_lines":[{"line_number":39,"context_line":"class RedisMatchMaker(test_utils.BaseTestCase):"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def setUp(self):"},{"line_number":42,"context_line":"        super(RedisMatchMaker, self).setUp()"},{"line_number":43,"context_line":"        self.ring_data \u003d {"},{"line_number":44,"context_line":"            \"conductor\": [\"controller1\", \"node1\", \"node2\", \"node3\"],"},{"line_number":45,"context_line":"            \"scheduler\": [\"controller1\", \"node1\", \"node2\", \"node3\"],"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_feaa02d3","line":42,"in_reply_to":"9aa7fdbe_6c76e4a5","updated":"2014-10-31 16:02:58.000000000","message":"Done","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":7805,"name":"Li Ma","email":"skywalker.nick@gmail.com","username":"Nick"},"change_message_id":"b0e2bf83862645a313c03b1ef76621ef64c9f832","unresolved":false,"context_lines":[{"line_number":72,"context_line":"            sorted(self.matcher.redis.smembers(\u0027conductor\u0027)),"},{"line_number":73,"context_line":"            [\u0027conductor.node1\u0027, \u0027conductor.node2\u0027, \u0027conductor.node3\u0027])"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    def test_ttl_expiry(self):"},{"line_number":76,"context_line":"        pass"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"    def test_ttl_update(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"9aa7fdbe_ec69f4be","line":75,"updated":"2014-10-25 13:53:06.000000000","message":"empty test case?","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":935,"name":"James Page","email":"ringo.page@gmail.com","username":"james-page"},"change_message_id":"be4d81d89261c0bc125af33fdbecef826728f713","unresolved":false,"context_lines":[{"line_number":72,"context_line":"            sorted(self.matcher.redis.smembers(\u0027conductor\u0027)),"},{"line_number":73,"context_line":"            [\u0027conductor.node1\u0027, \u0027conductor.node2\u0027, \u0027conductor.node3\u0027])"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    def test_ttl_expiry(self):"},{"line_number":76,"context_line":"        pass"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"    def test_ttl_update(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_1eafcee4","line":75,"in_reply_to":"9aa7fdbe_ec69f4be","updated":"2014-10-31 16:02:58.000000000","message":"Done","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":7805,"name":"Li Ma","email":"skywalker.nick@gmail.com","username":"Nick"},"change_message_id":"b0e2bf83862645a313c03b1ef76621ef64c9f832","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    def test_ttl_expiry(self):"},{"line_number":76,"context_line":"        pass"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"    def test_ttl_update(self):"},{"line_number":79,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":4,"id":"9aa7fdbe_0c6718ea","line":78,"updated":"2014-10-25 13:53:06.000000000","message":"empty test case?","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":935,"name":"James Page","email":"ringo.page@gmail.com","username":"james-page"},"change_message_id":"be4d81d89261c0bc125af33fdbecef826728f713","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    def test_ttl_expiry(self):"},{"line_number":76,"context_line":"        pass"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"    def test_ttl_update(self):"},{"line_number":79,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_3eac8aed","line":78,"in_reply_to":"9aa7fdbe_0c6718ea","updated":"2014-10-31 16:02:58.000000000","message":"Done","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"24d7166f82f5f4d97c4f5c255419e93b556d6ed5","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    def populate(self):"},{"line_number":54,"context_line":"        for k, hosts in self.ring_data.items():"},{"line_number":55,"context_line":"            for h in hosts:"},{"line_number":56,"context_line":"                self.matcher.register(k, h)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    def test_direct(self):"},{"line_number":59,"context_line":"        self.assertEqual("}],"source_content_type":"text/x-python","patch_set":7,"id":"5a890539_43247c0c","line":56,"updated":"2014-11-17 14:37:30.000000000","message":"Do we need to undo this on teardown? Is it pushing data up to redis?","commit_id":"918dff67e2b8a82aeac630bb06ab0ebbd4f2f7f6"},{"author":{"_account_id":935,"name":"James Page","email":"ringo.page@gmail.com","username":"james-page"},"change_message_id":"e051c9325a156d09aea726fbcf987220eb157f96","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    def populate(self):"},{"line_number":54,"context_line":"        for k, hosts in self.ring_data.items():"},{"line_number":55,"context_line":"            for h in hosts:"},{"line_number":56,"context_line":"                self.matcher.register(k, h)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    def test_direct(self):"},{"line_number":59,"context_line":"        self.assertEqual("}],"source_content_type":"text/x-python","patch_set":7,"id":"5a890539_cf85e65a","line":56,"in_reply_to":"5a890539_43247c0c","updated":"2014-11-17 17:59:10.000000000","message":"It is pushing data into redis, so yes it does need a tidy as well; I\u0027ll work that in now.","commit_id":"918dff67e2b8a82aeac630bb06ab0ebbd4f2f7f6"}],"tests/drivers/test_matchmaker_ring.py":[{"author":{"_account_id":7805,"name":"Li Ma","email":"skywalker.nick@gmail.com","username":"Nick"},"change_message_id":"b0e2bf83862645a313c03b1ef76621ef64c9f832","unresolved":false,"context_lines":[{"line_number":53,"context_line":"             (\u0027fanout~conductor.node2\u0027, \u0027node2\u0027),"},{"line_number":54,"context_line":"             (\u0027fanout~conductor.node3\u0027, \u0027node3\u0027)])"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    def test_topic(self):"},{"line_number":57,"context_line":"        # Round robins through the hosts on the topic"},{"line_number":58,"context_line":"        self.assertEqual("},{"line_number":59,"context_line":"            self.matcher.queues(\u0027scheduler\u0027),"}],"source_content_type":"text/x-python","patch_set":4,"id":"9aa7fdbe_4c5da014","line":56,"updated":"2014-10-25 13:53:06.000000000","message":"test_bare_topic?","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"},{"author":{"_account_id":935,"name":"James Page","email":"ringo.page@gmail.com","username":"james-page"},"change_message_id":"be4d81d89261c0bc125af33fdbecef826728f713","unresolved":false,"context_lines":[{"line_number":53,"context_line":"             (\u0027fanout~conductor.node2\u0027, \u0027node2\u0027),"},{"line_number":54,"context_line":"             (\u0027fanout~conductor.node3\u0027, \u0027node3\u0027)])"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    def test_topic(self):"},{"line_number":57,"context_line":"        # Round robins through the hosts on the topic"},{"line_number":58,"context_line":"        self.assertEqual("},{"line_number":59,"context_line":"            self.matcher.queues(\u0027scheduler\u0027),"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a8c0949_9e82de50","line":56,"in_reply_to":"9aa7fdbe_4c5da014","updated":"2014-10-31 16:02:58.000000000","message":"Done","commit_id":"13db8e27379aaddcd27bdd47ff5080bd802352cf"}]}
