)]}'
{"nova/tests/unit/compute/test_compute_api.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"132d4e7f12bdf25e8572aca8d26bacf6d8835bb0","unresolved":false,"context_lines":[{"line_number":993,"context_line":""},{"line_number":994,"context_line":"        return snapshot_id"},{"line_number":995,"context_line":""},{"line_number":996,"context_line":"    @mock.patch.object(objects.Migration, \u0027get_by_instance_and_status\u0027)"},{"line_number":997,"context_line":"    @mock.patch.object(image_api.API, \u0027delete\u0027)"},{"line_number":998,"context_line":"    @mock.patch.object(objects.InstanceMapping, \u0027get_by_instance_uuid\u0027)"},{"line_number":999,"context_line":"    @mock.patch.object(consoleauth_rpcapi.ConsoleAuthAPI,"},{"line_number":1000,"context_line":"                       \u0027delete_tokens_for_instance\u0027)"},{"line_number":1001,"context_line":"    @mock.patch.object(compute_utils,"},{"line_number":1002,"context_line":"                       \u0027notify_about_instance_usage\u0027)"},{"line_number":1003,"context_line":"    @mock.patch.object(db, \u0027instance_destroy\u0027)"},{"line_number":1004,"context_line":"    @mock.patch.object(db, \u0027instance_system_metadata_get\u0027)"},{"line_number":1005,"context_line":"    @mock.patch.object(neutron_api.API, \u0027deallocate_for_instance\u0027)"},{"line_number":1006,"context_line":"    @mock.patch.object(db, \u0027instance_update_and_get_original\u0027)"},{"line_number":1007,"context_line":"    @mock.patch.object(compute_api.API, \u0027_record_action_start\u0027)"},{"line_number":1008,"context_line":"    @mock.patch.object(servicegroup_api.API, \u0027service_is_up\u0027)"},{"line_number":1009,"context_line":"    @mock.patch.object(objects.Service, \u0027get_by_compute_host\u0027)"},{"line_number":1010,"context_line":"    @mock.patch.object(context.RequestContext, \u0027elevated\u0027)"},{"line_number":1011,"context_line":"    @mock.patch.object(objects.BlockDeviceMappingList,"},{"line_number":1012,"context_line":"                       \u0027get_by_instance_uuid\u0027, return_value\u003d[])"},{"line_number":1013,"context_line":"    @mock.patch.object(objects.Instance, \u0027save\u0027)"},{"line_number":1014,"context_line":"    def _test_delete(self, delete_type, mock_save, mock_bdm_get, mock_elevated,"},{"line_number":1015,"context_line":"                     mock_get_cn, mock_up, mock_record, mock_inst_update,"},{"line_number":1016,"context_line":"                     mock_deallocate, mock_inst_meta, mock_inst_destroy,"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f7c97a3_9642bc3d","line":1013,"range":{"start_line":996,"start_character":0,"end_line":1013,"end_character":48},"updated":"2018-05-10 19:00:59.000000000","message":"OMG, never see such long list of mock.patch.object()..","commit_id":"f1c5f3d8a416159d26fe9f788cfd4094df0a816e"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"132d4e7f12bdf25e8572aca8d26bacf6d8835bb0","unresolved":false,"context_lines":[{"line_number":1037,"context_line":"        mock_confirm \u003d self.useFixture("},{"line_number":1038,"context_line":"            fixtures.MockPatchObject(rpcapi, \u0027confirm_resize\u0027)).mock"},{"line_number":1039,"context_line":""},{"line_number":1040,"context_line":"        is_shelved \u003d inst.vm_state in (vm_states.SHELVED,"},{"line_number":1041,"context_line":"                                       vm_states.SHELVED_OFFLOADED)"},{"line_number":1042,"context_line":"        if is_shelved:"},{"line_number":1043,"context_line":"            snapshot_id \u003d self._set_delete_shelved_part(inst,"},{"line_number":1044,"context_line":"                                                        mock_image_delete)"},{"line_number":1045,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"5f7c97a3_d625945d","line":1042,"range":{"start_line":1040,"start_character":0,"end_line":1042,"end_character":22},"updated":"2018-05-10 19:00:59.000000000","message":"I am not sure why this change is necessary, this just seems a cleanup, not removing mox..\nbut it is not worth blocking the merger.","commit_id":"f1c5f3d8a416159d26fe9f788cfd4094df0a816e"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"955549c17dc3c26dc4b5c73e14fc7e92ad90a13d","unresolved":false,"context_lines":[{"line_number":1037,"context_line":"        mock_confirm \u003d self.useFixture("},{"line_number":1038,"context_line":"            fixtures.MockPatchObject(rpcapi, \u0027confirm_resize\u0027)).mock"},{"line_number":1039,"context_line":""},{"line_number":1040,"context_line":"        is_shelved \u003d inst.vm_state in (vm_states.SHELVED,"},{"line_number":1041,"context_line":"                                       vm_states.SHELVED_OFFLOADED)"},{"line_number":1042,"context_line":"        if is_shelved:"},{"line_number":1043,"context_line":"            snapshot_id \u003d self._set_delete_shelved_part(inst,"},{"line_number":1044,"context_line":"                                                        mock_image_delete)"},{"line_number":1045,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"5f7c97a3_cd25fb5d","line":1042,"range":{"start_line":1040,"start_character":0,"end_line":1042,"end_character":22},"in_reply_to":"5f7c97a3_d625945d","updated":"2018-05-11 00:27:43.000000000","message":"The condition (inst.vm_state in (vm_states.SHELVED, vm_states.SHELVED_OFFLOADED)) is used twice (line 1042 and 1170) in the new file.\nSo the condition is stored in the variable \u0027is_shelved\u0027.","commit_id":"f1c5f3d8a416159d26fe9f788cfd4094df0a816e"}]}
