)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"827c116a3130e71708387702f249f44d504ec3b2","unresolved":false,"context_lines":[{"line_number":9,"context_line":"We prefer mock nowadays and doing this makes the tests easier to"},{"line_number":10,"context_line":"modify."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"bauzas asked me to split this up, these are the unshelve tests."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: I6d57f9a50956a25935b64f3094f6ca78fa8dd979"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ba15a1d1_cbd4b521","line":12,"updated":"2015-09-15 18:23:00.000000000","message":"no need for this in the commit message","commit_id":"827fbacf02ec1892e9c50a5a3e5e030313a021dc"}],"nova/tests/unit/conductor/test_conductor.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"9d074131e0a279885cdfe394b617faf003befe01","unresolved":false,"context_lines":[{"line_number":1216,"context_line":""},{"line_number":1217,"context_line":"    @mock.patch.object(compute_rpcapi.ComputeAPI, \u0027start_instance\u0027)"},{"line_number":1218,"context_line":"    def test_unshelve_instance_on_host(self, mock_start):"},{"line_number":1219,"context_line":"        instance \u003d mock.MagicMock()"},{"line_number":1220,"context_line":"        instance.vm_state \u003d vm_states.SHELVED"},{"line_number":1221,"context_line":"        instance.task_state \u003d task_states.UNSHELVING"},{"line_number":1222,"context_line":"        instance.system_metadata \u003d {}"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba15a1d1_6bc1e97f","line":1219,"updated":"2015-09-15 18:21:55.000000000","message":"why you not using the fake object? self._create_fake_instance_obj()","commit_id":"827fbacf02ec1892e9c50a5a3e5e030313a021dc"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"f4ae09d8d676c47c8b36bc0eb61a7c21c3cf2bfe","unresolved":false,"context_lines":[{"line_number":1216,"context_line":""},{"line_number":1217,"context_line":"    @mock.patch.object(compute_rpcapi.ComputeAPI, \u0027start_instance\u0027)"},{"line_number":1218,"context_line":"    def test_unshelve_instance_on_host(self, mock_start):"},{"line_number":1219,"context_line":"        instance \u003d mock.MagicMock()"},{"line_number":1220,"context_line":"        instance.vm_state \u003d vm_states.SHELVED"},{"line_number":1221,"context_line":"        instance.task_state \u003d task_states.UNSHELVING"},{"line_number":1222,"context_line":"        instance.system_metadata \u003d {}"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba15a1d1_ef43a240","line":1219,"in_reply_to":"ba15a1d1_6bc1e97f","updated":"2015-09-16 16:58:11.000000000","message":"mainly because the fake objects have an enormous repr(), which makes comparing them a pain when assertions fail. Happy to change back though.","commit_id":"827fbacf02ec1892e9c50a5a3e5e030313a021dc"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"9d074131e0a279885cdfe394b617faf003befe01","unresolved":false,"context_lines":[{"line_number":1233,"context_line":"            self, mock_image):"},{"line_number":1234,"context_line":"        shelved_image_id \u003d \"image_not_found\""},{"line_number":1235,"context_line":""},{"line_number":1236,"context_line":"        instance \u003d mock.MagicMock()"},{"line_number":1237,"context_line":"        instance.vm_state \u003d vm_states.SHELVED_OFFLOADED"},{"line_number":1238,"context_line":"        instance.task_state \u003d task_states.UNSHELVING"},{"line_number":1239,"context_line":"        instance.system_metadata \u003d {}"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba15a1d1_2bbbf10f","line":1236,"updated":"2015-09-15 18:21:55.000000000","message":"ditto?","commit_id":"827fbacf02ec1892e9c50a5a3e5e030313a021dc"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"9d074131e0a279885cdfe394b617faf003befe01","unresolved":false,"context_lines":[{"line_number":1279,"context_line":"    @mock.patch.object(image_api.API, \u0027get\u0027, return_value\u003d\u0027fake_image\u0027)"},{"line_number":1280,"context_line":"    def test_unshelve_instance_schedule_and_rebuild("},{"line_number":1281,"context_line":"            self, mock_image, mock_schedule, mock_unshelve):"},{"line_number":1282,"context_line":"        instance \u003d mock.MagicMock()"},{"line_number":1283,"context_line":"        instance.vm_state \u003d vm_states.SHELVED_OFFLOADED"},{"line_number":1284,"context_line":"        instance.system_metadata \u003d {}"},{"line_number":1285,"context_line":"        instance.system_metadata[\u0027shelved_at\u0027] \u003d timeutils.utcnow()"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba15a1d1_6bf6c9d8","line":1282,"updated":"2015-09-15 18:21:55.000000000","message":"ditto\n\nlines 1282 \u003d\u003e 1287 can be moved to a helper method. these are used throughout the code that you have changed below","commit_id":"827fbacf02ec1892e9c50a5a3e5e030313a021dc"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"f4ae09d8d676c47c8b36bc0eb61a7c21c3cf2bfe","unresolved":false,"context_lines":[{"line_number":1279,"context_line":"    @mock.patch.object(image_api.API, \u0027get\u0027, return_value\u003d\u0027fake_image\u0027)"},{"line_number":1280,"context_line":"    def test_unshelve_instance_schedule_and_rebuild("},{"line_number":1281,"context_line":"            self, mock_image, mock_schedule, mock_unshelve):"},{"line_number":1282,"context_line":"        instance \u003d mock.MagicMock()"},{"line_number":1283,"context_line":"        instance.vm_state \u003d vm_states.SHELVED_OFFLOADED"},{"line_number":1284,"context_line":"        instance.system_metadata \u003d {}"},{"line_number":1285,"context_line":"        instance.system_metadata[\u0027shelved_at\u0027] \u003d timeutils.utcnow()"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba15a1d1_7a8667dc","line":1282,"in_reply_to":"ba15a1d1_6bf6c9d8","updated":"2015-09-16 16:58:11.000000000","message":"This is great","commit_id":"827fbacf02ec1892e9c50a5a3e5e030313a021dc"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"9d074131e0a279885cdfe394b617faf003befe01","unresolved":false,"context_lines":[{"line_number":1303,"context_line":"    def test_unshelve_instance_schedule_and_rebuild_novalid_host("},{"line_number":1304,"context_line":"            self, mock_image, mock_schedule):"},{"line_number":1305,"context_line":"        shelved_image_id \u003d \u0027fake_image_id\u0027"},{"line_number":1306,"context_line":"        instance \u003d mock.MagicMock()"},{"line_number":1307,"context_line":"        instance.vm_state \u003d vm_states.SHELVED_OFFLOADED"},{"line_number":1308,"context_line":"        instance.system_metadata \u003d {}"},{"line_number":1309,"context_line":"        instance.system_metadata[\u0027shelved_at\u0027] \u003d timeutils.utcnow()"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba15a1d1_0b05cdba","line":1306,"updated":"2015-09-15 18:21:55.000000000","message":"ditto","commit_id":"827fbacf02ec1892e9c50a5a3e5e030313a021dc"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"9d074131e0a279885cdfe394b617faf003befe01","unresolved":false,"context_lines":[{"line_number":1325,"context_line":"    def test_unshelve_instance_schedule_and_rebuild_messaging_exception("},{"line_number":1326,"context_line":"            self, mock_image, mock_schedule):"},{"line_number":1327,"context_line":"        shelved_image_id \u003d \u0027fake_image_id\u0027"},{"line_number":1328,"context_line":"        instance \u003d mock.MagicMock()"},{"line_number":1329,"context_line":"        instance.vm_state \u003d vm_states.SHELVED_OFFLOADED"},{"line_number":1330,"context_line":"        instance.task_state \u003d task_states.UNSHELVING"},{"line_number":1331,"context_line":"        instance.system_metadata \u003d {}"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba15a1d1_2b00d1a9","line":1328,"updated":"2015-09-15 18:21:55.000000000","message":"ditto","commit_id":"827fbacf02ec1892e9c50a5a3e5e030313a021dc"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"9d074131e0a279885cdfe394b617faf003befe01","unresolved":false,"context_lines":[{"line_number":1350,"context_line":"    @mock.patch.object(image_api.API, \u0027get\u0027, return_value\u003dNone)"},{"line_number":1351,"context_line":"    def test_unshelve_instance_schedule_and_rebuild_volume_backed("},{"line_number":1352,"context_line":"            self, mock_image, mock_schedule, mock_unshelve):"},{"line_number":1353,"context_line":"        instance \u003d mock.MagicMock()"},{"line_number":1354,"context_line":"        instance.vm_state \u003d vm_states.SHELVED_OFFLOADED"},{"line_number":1355,"context_line":"        instance.system_metadata \u003d {}"},{"line_number":1356,"context_line":"        instance.system_metadata[\u0027shelved_at\u0027] \u003d timeutils.utcnow()"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba15a1d1_eb3099a0","line":1353,"updated":"2015-09-15 18:21:55.000000000","message":"ditto","commit_id":"827fbacf02ec1892e9c50a5a3e5e030313a021dc"}]}
