)]}'
{"nova/tests/unit/virt/libvirt/fakelibvirt.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"1f09875135164e267cf19a83c9921054197ea897","unresolved":false,"context_lines":[{"line_number":1489,"context_line":"        super(FakeLibvirtFixture, self).setUp()"},{"line_number":1490,"context_line":""},{"line_number":1491,"context_line":"        # Some modules load the libvirt library in a strange way"},{"line_number":1492,"context_line":"        for module in (\u0027driver\u0027, \u0027host\u0027, \u0027guest\u0027, \u0027migration\u0027):"},{"line_number":1493,"context_line":"            i \u003d \u0027nova.virt.libvirt.{module}.libvirt\u0027.format(module\u003dmodule)"},{"line_number":1494,"context_line":"            # NOTE(mdbooth): The strange incantation below means \u0027this module\u0027"},{"line_number":1495,"context_line":"            self.useFixture(fixtures.MonkeyPatch(i, sys.modules[__name__]))"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a629dbe_7c72e8ae","line":1492,"updated":"2016-11-08 15:53:06.000000000","message":"Could we just get all sub-modules under nova/virt/libvirt/ and then only patch those that have a \u0027libvirt\u0027 attribute? Then we\u0027d at least be a bit future proofed.","commit_id":"d52bd807d7d306bb72651cbcd002d9d19e9581d2"},{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"6d9cda8afe900a70ad9d10672183a29656dd0723","unresolved":false,"context_lines":[{"line_number":1489,"context_line":"        super(FakeLibvirtFixture, self).setUp()"},{"line_number":1490,"context_line":""},{"line_number":1491,"context_line":"        # Some modules load the libvirt library in a strange way"},{"line_number":1492,"context_line":"        for module in (\u0027driver\u0027, \u0027host\u0027, \u0027guest\u0027, \u0027migration\u0027):"},{"line_number":1493,"context_line":"            i \u003d \u0027nova.virt.libvirt.{module}.libvirt\u0027.format(module\u003dmodule)"},{"line_number":1494,"context_line":"            # NOTE(mdbooth): The strange incantation below means \u0027this module\u0027"},{"line_number":1495,"context_line":"            self.useFixture(fixtures.MonkeyPatch(i, sys.modules[__name__]))"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a629dbe_9755d751","line":1492,"in_reply_to":"9a629dbe_7c72e8ae","updated":"2016-11-08 16:23:32.000000000","message":"I\u0027d worry about doing this, because it has the potential to backfire on some unfortunate who decides to call their global \u0027libvirt\u0027 for some other reason. There could be wailing and gnashing of teeth. My preference is to explicitly enumerate weirdness.\n\nIt might be better to have a library function to import it instead... Not this patch, though.","commit_id":"d52bd807d7d306bb72651cbcd002d9d19e9581d2"}],"nova/tests/unit/virt/libvirt/test_driver.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"55b30ea12cc924498b8e83c4620ecba2de8f96d4","unresolved":false,"context_lines":[{"line_number":14999,"context_line":""},{"line_number":15000,"context_line":"    @mock.patch.object(fakelibvirt, \"openAuth\")"},{"line_number":15001,"context_line":"    def test_update_status(self, mock_open):"},{"line_number":15002,"context_line":"        self.useFixture(fakelibvirt.FakeLibvirtFixture())"},{"line_number":15003,"context_line":"        mock_open.return_value \u003d fakelibvirt.Connection(\"qemu:///system\")"},{"line_number":15004,"context_line":""},{"line_number":15005,"context_line":"        drvr \u003d HostStateTestCase.FakeConnection()"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a629dbe_20ef3588","line":15002,"updated":"2016-11-09 15:02:24.000000000","message":"This would be better in a setUp of the test in case another test case is added in this test class later.","commit_id":"0aae6b3977b7a8a28e306db34813c9504cec2705"},{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"38799c350895726915afb5188cdacc6832af70ab","unresolved":false,"context_lines":[{"line_number":14999,"context_line":""},{"line_number":15000,"context_line":"    @mock.patch.object(fakelibvirt, \"openAuth\")"},{"line_number":15001,"context_line":"    def test_update_status(self, mock_open):"},{"line_number":15002,"context_line":"        self.useFixture(fakelibvirt.FakeLibvirtFixture())"},{"line_number":15003,"context_line":"        mock_open.return_value \u003d fakelibvirt.Connection(\"qemu:///system\")"},{"line_number":15004,"context_line":""},{"line_number":15005,"context_line":"        drvr \u003d HostStateTestCase.FakeConnection()"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a629dbe_3be124d1","line":15002,"in_reply_to":"9a629dbe_20ef3588","updated":"2016-11-09 15:12:49.000000000","message":"I was on the fence about this myself, but sure.","commit_id":"0aae6b3977b7a8a28e306db34813c9504cec2705"}],"nova/tests/unit/virt/libvirt/test_vif.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"6608793f9fb40018d71c6c54fdc5b486b07a1599","unresolved":false,"context_lines":[{"line_number":436,"context_line":""},{"line_number":437,"context_line":"    def setUp(self):"},{"line_number":438,"context_line":"        super(LibvirtVifTestCase, self).setUp()"},{"line_number":439,"context_line":"        self.useFixture(fakelibvirt.FakeLibvirtFixture())"},{"line_number":440,"context_line":"        self.flags(allow_same_net_traffic\u003dTrue)"},{"line_number":441,"context_line":"        # os_vif.initialize is typically done in nova-compute startup"},{"line_number":442,"context_line":"        os_vif.initialize()"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a629dbe_8db06845","line":439,"updated":"2016-11-08 16:49:13.000000000","message":"Why? The vif module doesn\u0027t have a global libvirt attribute. Is it using other driver callbacks?","commit_id":"a2576d92f623fe34a5b4a09c7755e1a2e58951d0"},{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"a2c621c4cf78dea6edc3b45b0624efad298ea3d3","unresolved":false,"context_lines":[{"line_number":436,"context_line":""},{"line_number":437,"context_line":"    def setUp(self):"},{"line_number":438,"context_line":"        super(LibvirtVifTestCase, self).setUp()"},{"line_number":439,"context_line":"        self.useFixture(fakelibvirt.FakeLibvirtFixture())"},{"line_number":440,"context_line":"        self.flags(allow_same_net_traffic\u003dTrue)"},{"line_number":441,"context_line":"        # os_vif.initialize is typically done in nova-compute startup"},{"line_number":442,"context_line":"        os_vif.initialize()"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a629dbe_71f20ed4","line":439,"in_reply_to":"9a629dbe_8db06845","updated":"2016-11-08 18:05:46.000000000","message":"There\u0027s a test somewhere which fails, but I don\u0027t have a note of which one now. It\u0027s obviously calling some one of the affected modules. It seems to import host above, so probably that one.","commit_id":"a2576d92f623fe34a5b4a09c7755e1a2e58951d0"}],"nova/tests/unit/virt/test_virt_drivers.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"09827ac9ee1f9398011ba7143579252ac6b30aa2","unresolved":false,"context_lines":[{"line_number":117,"context_line":"            \u0027nova.virt.libvirt.driver.connector\u0027,"},{"line_number":118,"context_line":"            fake_os_brick_connector))"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"        fakelibvirt.disable_event_thread(self)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"        self.flags(rescue_image_id\u003d\"2\","},{"line_number":123,"context_line":"                   rescue_kernel_id\u003d\"3\","}],"source_content_type":"text/x-python","patch_set":3,"id":"9a629dbe_a06ee52c","side":"PARENT","line":120,"updated":"2016-11-09 14:56:39.000000000","message":"Why is this removed?","commit_id":"a6053dd608a96ae57521a74b0d6f0f24d7efe75c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"55b30ea12cc924498b8e83c4620ecba2de8f96d4","unresolved":false,"context_lines":[{"line_number":117,"context_line":"            \u0027nova.virt.libvirt.driver.connector\u0027,"},{"line_number":118,"context_line":"            fake_os_brick_connector))"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"        fakelibvirt.disable_event_thread(self)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"        self.flags(rescue_image_id\u003d\"2\","},{"line_number":123,"context_line":"                   rescue_kernel_id\u003d\"3\","}],"source_content_type":"text/x-python","patch_set":3,"id":"9a629dbe_fb47ac48","side":"PARENT","line":120,"in_reply_to":"9a629dbe_a06ee52c","updated":"2016-11-09 15:02:24.000000000","message":"Oh I see because the fake libvirt fixture does this already.","commit_id":"a6053dd608a96ae57521a74b0d6f0f24d7efe75c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4ffca61a368186f08033729e542a95981f2b6a4f","unresolved":false,"context_lines":[{"line_number":145,"context_line":"            return fake_wait"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"        import nova.virt.libvirt.driver"},{"line_number":148,"context_line":"        import nova.virt.libvirt.firewall"},{"line_number":149,"context_line":"        import nova.virt.libvirt.host"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"        self.stubs.Set(nova.virt.libvirt.driver.LibvirtDriver,"},{"line_number":152,"context_line":"                       \u0027_get_instance_disk_info\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a629dbe_5bac18a0","line":149,"range":{"start_line":148,"start_character":8,"end_line":149,"end_character":37},"updated":"2016-11-09 15:09:01.000000000","message":"These aren\u0027t used below, so we don\u0027t need to import them.","commit_id":"0aae6b3977b7a8a28e306db34813c9504cec2705"},{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"38799c350895726915afb5188cdacc6832af70ab","unresolved":false,"context_lines":[{"line_number":145,"context_line":"            return fake_wait"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"        import nova.virt.libvirt.driver"},{"line_number":148,"context_line":"        import nova.virt.libvirt.firewall"},{"line_number":149,"context_line":"        import nova.virt.libvirt.host"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"        self.stubs.Set(nova.virt.libvirt.driver.LibvirtDriver,"},{"line_number":152,"context_line":"                       \u0027_get_instance_disk_info\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"9a629dbe_bb2294ff","line":149,"range":{"start_line":148,"start_character":8,"end_line":149,"end_character":37},"in_reply_to":"9a629dbe_5bac18a0","updated":"2016-11-09 15:12:49.000000000","message":"Well spotted. I just moved the whole block without checking because they weren\u0027t used above.","commit_id":"0aae6b3977b7a8a28e306db34813c9504cec2705"}]}
