)]}'
{"quantum/db/l3_db.py":[{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"change_message_id":"2f80545d897c7789b5db918fc5caaea723b8df7d","unresolved":false,"context_lines":[{"line_number":33,"context_line":"from quantum.extensions import l3"},{"line_number":34,"context_line":"from quantum.openstack.common import log as logging"},{"line_number":35,"context_line":"from quantum.openstack.common import uuidutils"},{"line_number":36,"context_line":"from quantum.openstack.common.notifier import api as notifier_api"},{"line_number":37,"context_line":"from quantum import policy"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FodA%3D","line":36,"updated":"2013-01-11 21:19:07.000000000","message":"I\u0027m really sorry to be pedant, but the order mandated by HACKING is probably not respected here.\nLine 36 and 35 should be inverted.","commit_id":"ce4b08278723fe64ffc0e5a126287f3e2bd00af3"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"8cf1ef2cb172d25bfbd2b380ac8e02a92e3fb475","unresolved":false,"context_lines":[{"line_number":33,"context_line":"from quantum.extensions import l3"},{"line_number":34,"context_line":"from quantum.openstack.common import log as logging"},{"line_number":35,"context_line":"from quantum.openstack.common import uuidutils"},{"line_number":36,"context_line":"from quantum.openstack.common.notifier import api as notifier_api"},{"line_number":37,"context_line":"from quantum import policy"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2Fk68%3D","line":36,"in_reply_to":"AAAAM3%2F%2FodA%3D","updated":"2013-01-15 10:33:07.000000000","message":"Done","commit_id":"ce4b08278723fe64ffc0e5a126287f3e2bd00af3"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"ab158177e5e3da17203cd1ee6d35c6dd7940900a","unresolved":false,"context_lines":[{"line_number":358,"context_line":"        notifier_api.notify(context,"},{"line_number":359,"context_line":"                            notifier_api.publisher_id(\u0027network\u0027),"},{"line_number":360,"context_line":"                            \u0027router.interface.create\u0027,"},{"line_number":361,"context_line":"                            notifier_api.INFO,"},{"line_number":362,"context_line":"                            {\u0027router.interface\u0027: info})"},{"line_number":363,"context_line":"        return info"},{"line_number":364,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2FndM%3D","line":361,"updated":"2013-01-13 05:35:08.000000000","message":"Please also see - https://review.openstack.org/#/c/19545/","commit_id":"ce4b08278723fe64ffc0e5a126287f3e2bd00af3"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"8cf1ef2cb172d25bfbd2b380ac8e02a92e3fb475","unresolved":false,"context_lines":[{"line_number":358,"context_line":"        notifier_api.notify(context,"},{"line_number":359,"context_line":"                            notifier_api.publisher_id(\u0027network\u0027),"},{"line_number":360,"context_line":"                            \u0027router.interface.create\u0027,"},{"line_number":361,"context_line":"                            notifier_api.INFO,"},{"line_number":362,"context_line":"                            {\u0027router.interface\u0027: info})"},{"line_number":363,"context_line":"        return info"},{"line_number":364,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAM3%2F%2Fk64%3D","line":361,"in_reply_to":"AAAAM3%2F%2FndM%3D","updated":"2013-01-15 10:33:07.000000000","message":"Done","commit_id":"ce4b08278723fe64ffc0e5a126287f3e2bd00af3"}],"quantum/tests/unit/test_l3_plugin.py":[{"author":{"_account_id":1994,"name":"Zhongyue Luo","email":"zhongyue.luo@gmail.com","username":"zyluo"},"change_message_id":"9bb79dda7a023f7f8bc95a7ef4076946d40aeacb","unresolved":false,"context_lines":[{"line_number":43,"context_line":"from quantum.openstack.common import cfg"},{"line_number":44,"context_line":"from quantum.openstack.common import log as logging"},{"line_number":45,"context_line":"from quantum.openstack.common import uuidutils"},{"line_number":46,"context_line":"from quantum.openstack.common.notifier import test_notifier"},{"line_number":47,"context_line":"from quantum.tests.unit import test_api_v2"},{"line_number":48,"context_line":"from quantum.tests.unit import test_db_plugin"},{"line_number":49,"context_line":"from quantum.tests.unit import test_extensions"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAM3%2F%2Fjfg%3D","line":46,"updated":"2013-01-16 05:09:09.000000000","message":"This line should be placed between lines 44 and 45.","commit_id":"71ff18cfd048126db4e2b523199c26e902a4ffaf"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"999ac39576e68fed871392218d7fa2f92fb51a89","unresolved":false,"context_lines":[{"line_number":297,"context_line":"        test_config[\u0027extension_manager\u0027] \u003d ext_mgr"},{"line_number":298,"context_line":"        super(L3NatDBTestCase, self).setUp()"},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"        cfg.CONF.notification_driver \u003d [test_notifier.__name__]"},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"    def tearDown(self):"},{"line_number":303,"context_line":"        test_notifier.NOTIFICATIONS \u003d []"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAM3%2F%2FjCQ%3D","line":300,"updated":"2013-01-16 15:33:09.000000000","message":"we should use cfg.CONF.set_override(\u0027notification_driver\u0027, [test_notifier.__name__])\n\nAnd we should clear notifier.api._driver before test.","commit_id":"2046dc33897a2d96ae3c218bc03803d9692ace66"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"999ac39576e68fed871392218d7fa2f92fb51a89","unresolved":false,"context_lines":[{"line_number":300,"context_line":"        cfg.CONF.notification_driver \u003d [test_notifier.__name__]"},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"    def tearDown(self):"},{"line_number":303,"context_line":"        test_notifier.NOTIFICATIONS \u003d []"},{"line_number":304,"context_line":""},{"line_number":305,"context_line":"    def _create_router(self, fmt, tenant_id, name\u003dNone,"},{"line_number":306,"context_line":"                       admin_state_up\u003dNone, set_context\u003dFalse):"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAM3%2F%2FjDo%3D","line":303,"updated":"2013-01-16 15:33:09.000000000","message":"you should invoke base class tearDown \u0027super(L3NatDBTestCase, self).tearDown()\u0027. This is reason of test failed","commit_id":"2046dc33897a2d96ae3c218bc03803d9692ace66"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":297,"context_line":"        test_config[\u0027extension_manager\u0027] \u003d ext_mgr"},{"line_number":298,"context_line":"        super(L3NatDBTestCase, self).setUp()"},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"        cfg.CONF.set_override(\"notification_driver\", [test_notifier.__name__])"},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"    def tearDown(self):"},{"line_number":303,"context_line":"        super(L3NatDBTestCase, self).tearDown()"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAM3%2F%2Fi9U%3D","line":300,"updated":"2013-01-16 16:13:49.000000000","message":"This will have to come before invoking super, otherwise when the plugin is loaded in the superclass the overriden parameter will be ignored.","commit_id":"9acb57e38b51fb62cc510c21a3eac26c2199725b"},{"author":{"_account_id":261,"name":"Salvatore Orlando","email":"salv.orlando@gmail.com","username":"salvatore-orlando"},"unresolved":false,"context_lines":[{"line_number":297,"context_line":"        test_config[\u0027extension_manager\u0027] \u003d ext_mgr"},{"line_number":298,"context_line":"        super(L3NatDBTestCase, self).setUp()"},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"        cfg.CONF.set_override(\"notification_driver\", [test_notifier.__name__])"},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"    def tearDown(self):"},{"line_number":303,"context_line":"        super(L3NatDBTestCase, self).tearDown()"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAM3%2F%2Fi6Y%3D","line":300,"in_reply_to":"AAAAM3%2F%2Fi9U%3D","updated":"2013-01-16 16:26:58.000000000","message":"forget about this comment.\nThe issue seems actually to be that the openstack.common notification API parses cfg.CONF.notification_driver only once. It seems I am able to run the tests setting quantum.openstack.common.api._drivers\u003dNone before this line (this will allow for reloading of the notifiers at each test run)","commit_id":"9acb57e38b51fb62cc510c21a3eac26c2199725b"}]}
