)]}'
{"nova/tests/unit/objects/test_instance_info_cache.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"4f66a39d3e236f94a2901a51b4604ca1e276e1cd","unresolved":false,"context_lines":[{"line_number":40,"context_line":""},{"line_number":41,"context_line":"class _TestInstanceInfoCacheObject(object):"},{"line_number":42,"context_line":"    @mock.patch.object(db, \u0027instance_info_cache_get\u0027)"},{"line_number":43,"context_line":"    def test_get_by_instance_uuid(self, get_mock):"},{"line_number":44,"context_line":"        nwinfo \u003d network_model.NetworkInfo.hydrate([{\u0027address\u0027: \u0027foo\u0027}])"},{"line_number":45,"context_line":"        get_mock.return_value \u003d dict(fake_info_cache,"},{"line_number":46,"context_line":"                                     network_info\u003dnwinfo.json())"}],"source_content_type":"text/x-python","patch_set":5,"id":"bab6814e_13a3d89f","line":43,"range":{"start_line":43,"start_character":40,"end_line":43,"end_character":48},"updated":"2016-05-24 16:27:15.000000000","message":"most of the tests uses mock_* naming convention instead of *_mock","commit_id":"0d1a1d70781b421ccc68af67e8ec86db4ed68238"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"4f66a39d3e236f94a2901a51b4604ca1e276e1cd","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        get_mock.assert_called_once_with(self.context, uuids.info_instance)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    @mock.patch.object(db, \u0027instance_info_cache_get\u0027)"},{"line_number":54,"context_line":"    def test_get_by_instance_uuid_no_entries(self, get_mock):"},{"line_number":55,"context_line":"        get_mock.return_value \u003d None"},{"line_number":56,"context_line":"        self.assertRaises("},{"line_number":57,"context_line":"                exception.InstanceInfoCacheNotFound,"}],"source_content_type":"text/x-python","patch_set":5,"id":"bab6814e_b3876cd6","line":54,"range":{"start_line":54,"start_character":51,"end_line":54,"end_character":59},"updated":"2016-05-24 16:27:15.000000000","message":"ditto","commit_id":"0d1a1d70781b421ccc68af67e8ec86db4ed68238"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"4f66a39d3e236f94a2901a51b4604ca1e276e1cd","unresolved":false,"context_lines":[{"line_number":71,"context_line":"        obj \u003d instance_info_cache.InstanceInfoCache()"},{"line_number":72,"context_line":"        cells_api \u003d cells_rpcapi.CellsAPI()"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"        with test.nested("},{"line_number":75,"context_line":"            mock.patch.object(db, \u0027instance_info_cache_update\u0027),"},{"line_number":76,"context_line":"            mock.patch.object(cells_opts, \u0027get_cell_type\u0027),"},{"line_number":77,"context_line":"            mock.patch.object(cells_rpcapi, \u0027CellsAPI\u0027,"},{"line_number":78,"context_line":"                                 use_mock_anything\u003dTrue),"},{"line_number":79,"context_line":"            mock.patch.object(cells_api,"},{"line_number":80,"context_line":"                                 \u0027instance_info_cache_update_at_top\u0027)"},{"line_number":81,"context_line":"        ) as (update_mock, get_mock, rpc_mock, api_mock):"},{"line_number":82,"context_line":"            nwinfo \u003d network_model.NetworkInfo.hydrate([{\u0027address\u0027: \u0027foo\u0027}])"},{"line_number":83,"context_line":"            new_info_cache \u003d fake_info_cache.copy()"},{"line_number":84,"context_line":"            new_info_cache[\u0027network_info\u0027] \u003d nwinfo.json()"}],"source_content_type":"text/x-python","patch_set":5,"id":"bab6814e_9394e8e8","line":81,"range":{"start_line":74,"start_character":1,"end_line":81,"end_character":57},"updated":"2016-05-24 16:27:15.000000000","message":"I think this nesting can be avoided by adding mock.patch.object decorators to the _save_helper","commit_id":"0d1a1d70781b421ccc68af67e8ec86db4ed68238"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"3b47899b1a4659932f652ca9b2e76c2d04900616","unresolved":false,"context_lines":[{"line_number":100,"context_line":"        self._save_helper(None, False)"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    @mock.patch.object(db, \u0027instance_info_cache_update\u0027)"},{"line_number":103,"context_line":"    def test_save_updates_self(self, update_mock):"},{"line_number":104,"context_line":"        fake_updated_at \u003d datetime.datetime(2015, 1, 1)"},{"line_number":105,"context_line":"        nwinfo \u003d network_model.NetworkInfo.hydrate([{\u0027address\u0027: \u0027foo\u0027}])"},{"line_number":106,"context_line":"        nwinfo_json \u003d nwinfo.json()"}],"source_content_type":"text/x-python","patch_set":8,"id":"9abb7d3a_371b6a74","line":103,"range":{"start_line":103,"start_character":37,"end_line":103,"end_character":48},"updated":"2016-05-28 16:51:02.000000000","message":"Why do we need to change here? \"mock_\" is used as prefix at most other places..","commit_id":"5405e80008b94be0cb8167e7e0b7585d6741dd82"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"f630f70e547f733d515c282752d82e4aa604571c","unresolved":false,"context_lines":[{"line_number":88,"context_line":"        obj._context \u003d self.context"},{"line_number":89,"context_line":"        obj.instance_uuid \u003d uuids.info_instance"},{"line_number":90,"context_line":"        obj.network_info \u003d nwinfo"},{"line_number":91,"context_line":"        obj.save(update_cells\u003dupdate_cells)"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"    def test_save_with_update_cells_and_compute_cell(self):"},{"line_number":94,"context_line":"        self._save_helper(\u0027compute\u0027, True)"}],"source_content_type":"text/x-python","patch_set":9,"id":"9abb7d3a_8e02e107","line":91,"updated":"2016-05-30 12:04:12.000000000","message":"mock_update.assert_called_once_with should be added.","commit_id":"80df716fb8179fb7fcfa0ced5e58324290833fae"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"66fdf9e8432ba55e9a3a528ded9b6a280ca28625","unresolved":false,"context_lines":[{"line_number":90,"context_line":"        obj.network_info \u003d nwinfo"},{"line_number":91,"context_line":"        obj.save(update_cells\u003dupdate_cells)"},{"line_number":92,"context_line":"        mock_update.asssert_called_once_with(self.context, obj.instance_uuid,"},{"line_number":93,"context_line":"                                             nwinfo)"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    def test_save_with_update_cells_and_compute_cell(self):"},{"line_number":96,"context_line":"        self._save_helper(\u0027compute\u0027, True)"}],"source_content_type":"text/x-python","patch_set":21,"id":"7a77a97e_3bdeb83f","line":93,"range":{"start_line":93,"start_character":45,"end_line":93,"end_character":51},"updated":"2016-11-16 05:20:04.000000000","message":"this should be {\u0027network_info\u0027: nwinfo.json()} ?","commit_id":"08468e758572eadd51921623a03e71fff2b79ec4"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"66fdf9e8432ba55e9a3a528ded9b6a280ca28625","unresolved":false,"context_lines":[{"line_number":102,"context_line":"        self._save_helper(None, False)"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"    @mock.patch.object(db, \u0027instance_info_cache_update\u0027)"},{"line_number":105,"context_line":"    def test_save_updates_self(self, update_mock):"},{"line_number":106,"context_line":"        fake_updated_at \u003d datetime.datetime(2015, 1, 1)"},{"line_number":107,"context_line":"        nwinfo \u003d network_model.NetworkInfo.hydrate([{\u0027address\u0027: \u0027foo\u0027}])"},{"line_number":108,"context_line":"        nwinfo_json \u003d nwinfo.json()"}],"source_content_type":"text/x-python","patch_set":21,"id":"7a77a97e_7b73d080","line":105,"range":{"start_line":105,"start_character":37,"end_line":105,"end_character":48},"updated":"2016-11-16 05:20:04.000000000","message":"why changing this?","commit_id":"08468e758572eadd51921623a03e71fff2b79ec4"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"b4bc1ec8b41f4c5103ef3a98b0688876facf434f","unresolved":false,"context_lines":[{"line_number":102,"context_line":"        self._save_helper(None, False)"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"    @mock.patch.object(db, \u0027instance_info_cache_update\u0027)"},{"line_number":105,"context_line":"    def test_save_updates_self(self, update_mock):"},{"line_number":106,"context_line":"        fake_updated_at \u003d datetime.datetime(2015, 1, 1)"},{"line_number":107,"context_line":"        nwinfo \u003d network_model.NetworkInfo.hydrate([{\u0027address\u0027: \u0027foo\u0027}])"},{"line_number":108,"context_line":"        nwinfo_json \u003d nwinfo.json()"}],"source_content_type":"text/x-python","patch_set":21,"id":"7a77a97e_b469f527","line":105,"range":{"start_line":105,"start_character":37,"end_line":105,"end_character":48},"in_reply_to":"7a77a97e_7b73d080","updated":"2016-11-16 07:33:01.000000000","message":"I don\u0027t know... maybe a bad rebase.","commit_id":"08468e758572eadd51921623a03e71fff2b79ec4"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7c83dfc3671299cedc2813be0d0ff05b9c60d875","unresolved":false,"context_lines":[{"line_number":85,"context_line":"                self.context, uuids.info_instance,"},{"line_number":86,"context_line":"                {\u0027network_info\u0027: nwinfo.json()}).AndReturn(new_info_cache)"},{"line_number":87,"context_line":"        if update_cells:"},{"line_number":88,"context_line":"            cells_opts.get_cell_type().AndReturn(cell_type)"},{"line_number":89,"context_line":"            if cell_type \u003d\u003d \u0027compute\u0027:"},{"line_number":90,"context_line":"                cells_rpcapi.CellsAPI().AndReturn(cells_api)"},{"line_number":91,"context_line":"                cells_api.instance_info_cache_update_at_top("}],"source_content_type":"text/x-python","patch_set":23,"id":"5a74a57a_f4f1a36b","side":"PARENT","line":88,"updated":"2016-11-24 14:04:47.000000000","message":"I don\u0027t see mock_get.expect_called_once_with() to match this check here.","commit_id":"06fb7423cbc34a9350f52d0eb69161067578dea8"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"012a0de1ac9dfa07ab6aba92e29f0a0130fcbcb6","unresolved":false,"context_lines":[{"line_number":85,"context_line":"                self.context, uuids.info_instance,"},{"line_number":86,"context_line":"                {\u0027network_info\u0027: nwinfo.json()}).AndReturn(new_info_cache)"},{"line_number":87,"context_line":"        if update_cells:"},{"line_number":88,"context_line":"            cells_opts.get_cell_type().AndReturn(cell_type)"},{"line_number":89,"context_line":"            if cell_type \u003d\u003d \u0027compute\u0027:"},{"line_number":90,"context_line":"                cells_rpcapi.CellsAPI().AndReturn(cells_api)"},{"line_number":91,"context_line":"                cells_api.instance_info_cache_update_at_top("}],"source_content_type":"text/x-python","patch_set":23,"id":"5a74a57a_c32a192c","side":"PARENT","line":88,"in_reply_to":"5a74a57a_f4f1a36b","updated":"2016-11-25 02:03:43.000000000","message":"Done","commit_id":"06fb7423cbc34a9350f52d0eb69161067578dea8"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7c83dfc3671299cedc2813be0d0ff05b9c60d875","unresolved":false,"context_lines":[{"line_number":87,"context_line":"        if update_cells:"},{"line_number":88,"context_line":"            cells_opts.get_cell_type().AndReturn(cell_type)"},{"line_number":89,"context_line":"            if cell_type \u003d\u003d \u0027compute\u0027:"},{"line_number":90,"context_line":"                cells_rpcapi.CellsAPI().AndReturn(cells_api)"},{"line_number":91,"context_line":"                cells_api.instance_info_cache_update_at_top("},{"line_number":92,"context_line":"                    self.context, \u0027foo\u0027)"},{"line_number":93,"context_line":"        self.mox.ReplayAll()"}],"source_content_type":"text/x-python","patch_set":23,"id":"5a74a57a_b4f80b4b","side":"PARENT","line":90,"updated":"2016-11-24 14:04:47.000000000","message":"as above, seems we are missing an assert on mock_rpc?","commit_id":"06fb7423cbc34a9350f52d0eb69161067578dea8"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"012a0de1ac9dfa07ab6aba92e29f0a0130fcbcb6","unresolved":false,"context_lines":[{"line_number":87,"context_line":"        if update_cells:"},{"line_number":88,"context_line":"            cells_opts.get_cell_type().AndReturn(cell_type)"},{"line_number":89,"context_line":"            if cell_type \u003d\u003d \u0027compute\u0027:"},{"line_number":90,"context_line":"                cells_rpcapi.CellsAPI().AndReturn(cells_api)"},{"line_number":91,"context_line":"                cells_api.instance_info_cache_update_at_top("},{"line_number":92,"context_line":"                    self.context, \u0027foo\u0027)"},{"line_number":93,"context_line":"        self.mox.ReplayAll()"}],"source_content_type":"text/x-python","patch_set":23,"id":"5a74a57a_e321d54e","side":"PARENT","line":90,"in_reply_to":"5a74a57a_b4f80b4b","updated":"2016-11-25 02:03:43.000000000","message":"Done","commit_id":"06fb7423cbc34a9350f52d0eb69161067578dea8"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"7c83dfc3671299cedc2813be0d0ff05b9c60d875","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        self.assertEqual(uuids.info_instance, obj.instance_uuid)"},{"line_number":66,"context_line":"        self.assertIsNone(obj.network_info)"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"    @mock.patch.object(cells_rpcapi, \u0027CellsAPI\u0027, use_mock_anything\u003dTrue)"},{"line_number":69,"context_line":"    @mock.patch.object(cells_opts, \u0027get_cell_type\u0027)"},{"line_number":70,"context_line":"    @mock.patch.object(db, \u0027instance_info_cache_update\u0027)"},{"line_number":71,"context_line":"    def _save_helper(self, cell_type, update_cells, mock_update,"}],"source_content_type":"text/x-python","patch_set":23,"id":"5a74a57a_d47907fe","line":68,"range":{"start_line":68,"start_character":49,"end_line":68,"end_character":71},"updated":"2016-11-24 14:04:47.000000000","message":"This is a mox param, and not a mock param, I think we should remove it.","commit_id":"c61879cabe0147be9c097db7a4ce9f1d090b5941"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"012a0de1ac9dfa07ab6aba92e29f0a0130fcbcb6","unresolved":false,"context_lines":[{"line_number":65,"context_line":"        self.assertEqual(uuids.info_instance, obj.instance_uuid)"},{"line_number":66,"context_line":"        self.assertIsNone(obj.network_info)"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"    @mock.patch.object(cells_rpcapi, \u0027CellsAPI\u0027, use_mock_anything\u003dTrue)"},{"line_number":69,"context_line":"    @mock.patch.object(cells_opts, \u0027get_cell_type\u0027)"},{"line_number":70,"context_line":"    @mock.patch.object(db, \u0027instance_info_cache_update\u0027)"},{"line_number":71,"context_line":"    def _save_helper(self, cell_type, update_cells, mock_update,"}],"source_content_type":"text/x-python","patch_set":23,"id":"5a74a57a_a327dd62","line":68,"range":{"start_line":68,"start_character":49,"end_line":68,"end_character":71},"in_reply_to":"5a74a57a_d47907fe","updated":"2016-11-25 02:03:43.000000000","message":"Done","commit_id":"c61879cabe0147be9c097db7a4ce9f1d090b5941"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"9c39a96495ab9fe03c0a44bd6eccb26221be7f06","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        with mock.patch.object(cells_api,"},{"line_number":79,"context_line":"                               \u0027instance_info_cache_update_at_top\u0027):"},{"line_number":80,"context_line":"            if update_cells:"},{"line_number":81,"context_line":"                if cell_type \u003d\u003d \u0027compute\u0027:"},{"line_number":82,"context_line":"                    mock_rpc.return_value \u003d cells_api"},{"line_number":83,"context_line":"                    cells_api.instance_info_cache_update_at_top("},{"line_number":84,"context_line":"                        self.context, \u0027foo\u0027)"}],"source_content_type":"text/x-python","patch_set":28,"id":"1a6eadb0_1dccbc34","line":81,"range":{"start_line":81,"start_character":0,"end_line":81,"end_character":42},"updated":"2016-12-13 05:40:05.000000000","message":"we need to mock cells_opts.get_cell_type() also to return arg cell_type. and assert called check also\n\notherwise it will always be from conf with default \u0027compute\u0027 even for tests L96 and try to update cell - https://github.com/openstack/nova/blob/4f91ed3a547965ed96a22520edcfb783e7936e95/nova/objects/instance_info_cache.py#L78","commit_id":"0c597a451e5d7b9c2a7f4276d55d2943d56db8b2"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"29d35c347a9e8176bf9bfd0b10bc68c8ae3e8823","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        with mock.patch.object(cells_api,"},{"line_number":79,"context_line":"                               \u0027instance_info_cache_update_at_top\u0027):"},{"line_number":80,"context_line":"            if update_cells:"},{"line_number":81,"context_line":"                if cell_type \u003d\u003d \u0027compute\u0027:"},{"line_number":82,"context_line":"                    mock_rpc.return_value \u003d cells_api"},{"line_number":83,"context_line":"                    cells_api.instance_info_cache_update_at_top("},{"line_number":84,"context_line":"                        self.context, \u0027foo\u0027)"}],"source_content_type":"text/x-python","patch_set":28,"id":"1a6eadb0_866dd806","line":81,"range":{"start_line":81,"start_character":0,"end_line":81,"end_character":42},"in_reply_to":"1a6eadb0_1dccbc34","updated":"2016-12-13 09:06:23.000000000","message":"Done","commit_id":"0c597a451e5d7b9c2a7f4276d55d2943d56db8b2"}]}
