)]}'
{"nova/tests/unit/api/openstack/compute/contrib/test_aggregates.py":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"1ae991798ba339317f4e884cc684c75398b6c3b1","unresolved":false,"context_lines":[{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    def _set_up(self):"},{"line_number":59,"context_line":"        self.controller \u003d aggregates_v21.AggregateController()"},{"line_number":60,"context_line":"        self.req \u003d fakes.HTTPRequest.blank(\u0027/v2.1/os-aggregates\u0027,"},{"line_number":61,"context_line":"                                           use_admin_context\u003dTrue)"},{"line_number":62,"context_line":"        self.user_req \u003d fakes.HTTPRequest.blank(\u0027/v2.1/os-aggregates\u0027)"},{"line_number":63,"context_line":"        self.context \u003d self.req.environ[\u0027nova.context\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_c291529c","line":60,"updated":"2015-08-14 01:17:16.000000000","message":"I remember we said we use \u0027/v2\u0027 for v2.1 also.","commit_id":"2293ec082dc17c30b8248833280be2841132bd3a"}],"nova/tests/unit/api/openstack/compute/test_aggregates.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"14c4af0b4d2a4a2c1c22ee07aca6578a95640994","unresolved":false,"context_lines":[{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    def _set_up(self):"},{"line_number":59,"context_line":"        self.controller \u003d aggregates_v21.AggregateController()"},{"line_number":60,"context_line":"        self.req \u003d fakes.HTTPRequest.blank(\u0027/v2/os-aggregates\u0027,"},{"line_number":61,"context_line":"                                           use_admin_context\u003dTrue)"},{"line_number":62,"context_line":"        self.user_req \u003d fakes.HTTPRequest.blank(\u0027/v2/os-aggregates\u0027)"},{"line_number":63,"context_line":"        self.context \u003d self.req.environ[\u0027nova.context\u0027]"}],"source_content_type":"text/x-python","patch_set":7,"id":"fa1b9901_3d87d0d8","line":60,"updated":"2015-08-18 17:00:04.000000000","message":"See comment below about why I prefer /v2.1 here","commit_id":"3b5c8d006e52db36154713843706f5123fd40392"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"14c4af0b4d2a4a2c1c22ee07aca6578a95640994","unresolved":false,"context_lines":[{"line_number":655,"context_line":"    def _set_up(self):"},{"line_number":656,"context_line":"        self.controller \u003d aggregates_v2.AggregateController()"},{"line_number":657,"context_line":"        self.req \u003d FakeRequest()"},{"line_number":658,"context_line":"        self.user_req \u003d fakes.HTTPRequest.blank(\u0027/v2/os-aggregates\u0027)"},{"line_number":659,"context_line":"        self.context \u003d self.req.environ[\u0027nova.context\u0027]"},{"line_number":660,"context_line":""},{"line_number":661,"context_line":"    def test_add_host_raises_key_error(self):"}],"source_content_type":"text/x-python","patch_set":7,"id":"fa1b9901_bd1c40c2","line":658,"updated":"2015-08-18 17:00:04.000000000","message":"given this is here, I think the others should be /v2.1","commit_id":"3b5c8d006e52db36154713843706f5123fd40392"}],"nova/tests/unit/api/openstack/compute/test_certificates.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"0b6dd782a28cd685e4ab22ee80cb94513a3c5c74","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"class CertificatesTestV21(test.NoDBTestCase):"},{"line_number":35,"context_line":"    certificates \u003d certificates_v21"},{"line_number":36,"context_line":"    url \u003d \u0027/v2/os-certificates\u0027"},{"line_number":37,"context_line":"    certificate_show_extension \u003d \u0027os_compute_api:os-certificates:show\u0027"},{"line_number":38,"context_line":"    certificate_create_extension \u003d \\"},{"line_number":39,"context_line":"        \u0027os_compute_api:os-certificates:create\u0027"}],"source_content_type":"text/x-python","patch_set":8,"id":"fa1b9901_4d8087f7","line":36,"updated":"2015-08-19 23:14:12.000000000","message":"Here should be\n\n url \u003d \u0027/v2/fake/os-certificates\u0027\n\nlike line 118 for including the project-id \"fake\" in url and we can remove line 118.","commit_id":"5f23ad9f024f3bf04a803420651f923e973c3703"}],"nova/tests/unit/api/openstack/compute/test_flavors.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"0b6dd782a28cd685e4ab22ee80cb94513a3c5c74","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"class FlavorsTestV21(test.TestCase):"},{"line_number":116,"context_line":"    _prefix \u003d \"/v2\""},{"line_number":117,"context_line":"    Controller \u003d flavors_v21.FlavorsController"},{"line_number":118,"context_line":"    fake_request \u003d fakes.HTTPRequestV21"},{"line_number":119,"context_line":"    _rspv \u003d \"v2\""}],"source_content_type":"text/x-python","patch_set":8,"id":"fa1b9901_6d01cb69","line":116,"updated":"2015-08-19 23:14:12.000000000","message":"ditto: please check line 568","commit_id":"5f23ad9f024f3bf04a803420651f923e973c3703"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"dd06bb8c65006dd86e64ef9f815e1c7adbd29382","unresolved":false,"context_lines":[{"line_number":569,"context_line":"    Controller \u003d flavors_v2.Controller"},{"line_number":570,"context_line":"    fake_request \u003d fakes.HTTPRequest"},{"line_number":571,"context_line":"    _rspv \u003d \"v2/fake\""},{"line_number":572,"context_line":"    _fake \u003d \"/fake\""},{"line_number":573,"context_line":""},{"line_number":574,"context_line":"    def _set_expected_body(self, expected, ephemeral, swap, disabled):"},{"line_number":575,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa1b9901_a8886023","line":572,"updated":"2015-08-25 05:39:44.000000000","message":"We can remove line 571-572 because of the same lines.","commit_id":"1643da941ca51225646074c196dc26792f25b812"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"269d27836390f963c9315d299c0da716aec09eaf","unresolved":false,"context_lines":[{"line_number":569,"context_line":"    Controller \u003d flavors_v2.Controller"},{"line_number":570,"context_line":"    fake_request \u003d fakes.HTTPRequest"},{"line_number":571,"context_line":"    _rspv \u003d \"v2/fake\""},{"line_number":572,"context_line":"    _fake \u003d \"/fake\""},{"line_number":573,"context_line":""},{"line_number":574,"context_line":"    def _set_expected_body(self, expected, ephemeral, swap, disabled):"},{"line_number":575,"context_line":"        pass"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa1b9901_2d2209a4","line":572,"in_reply_to":"fa1b9901_a8886023","updated":"2015-08-25 14:01:44.000000000","message":"Done","commit_id":"1643da941ca51225646074c196dc26792f25b812"}],"nova/tests/unit/api/openstack/compute/test_fping.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"0b6dd782a28cd685e4ab22ee80cb94513a3c5c74","unresolved":false,"context_lines":[{"line_number":114,"context_line":"class FpingTestV2(FpingTestV21):"},{"line_number":115,"context_line":"    controller_cls \u003d fping.FpingController"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"    def _get_url(self):"},{"line_number":118,"context_line":"        return \"/v2/1234\""},{"line_number":119,"context_line":""},{"line_number":120,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"fa1b9901_edfe3bad","side":"PARENT","line":117,"updated":"2015-08-19 23:14:12.000000000","message":"here","commit_id":"ac2eb54cbad218bcb04ad2f940f6514bf1f6b3fe"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"0b6dd782a28cd685e4ab22ee80cb94513a3c5c74","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        self.controller \u003d self.controller_cls()"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    def _get_url(self):"},{"line_number":54,"context_line":"        return \"/v2\""},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"    def test_fping_index(self):"},{"line_number":57,"context_line":"        req \u003d fakes.HTTPRequest.blank(self._get_url() + \"/os-fping\")"}],"source_content_type":"text/x-python","patch_set":8,"id":"fa1b9901_2dce7382","line":54,"updated":"2015-08-19 23:14:12.000000000","message":"On v3 API, the URL didn\u0027t contain project-id.\nThe line 117 _get_url() includes \"1234\" as a project-id.\n\nSo here should be\n\n return \"/v2/1234\"\n\nand we can remove the other _get_url() method.","commit_id":"5f23ad9f024f3bf04a803420651f923e973c3703"}],"nova/tests/unit/api/openstack/compute/test_images.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"0b6dd782a28cd685e4ab22ee80cb94513a3c5c74","unresolved":false,"context_lines":[{"line_number":44,"context_line":"    \"\"\"Test of the OpenStack API /images application controller w/Glance."},{"line_number":45,"context_line":"    \"\"\""},{"line_number":46,"context_line":"    image_controller_class \u003d images_v21.ImagesController"},{"line_number":47,"context_line":"    url_base \u003d \u0027/v2\u0027"},{"line_number":48,"context_line":"    bookmark_base \u003d \u0027\u0027"},{"line_number":49,"context_line":"    http_request \u003d fakes.HTTPRequestV21"},{"line_number":50,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"fa1b9901_0dfb6f7a","line":47,"updated":"2015-08-19 23:14:12.000000000","message":"ditto","commit_id":"5f23ad9f024f3bf04a803420651f923e973c3703"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"dd06bb8c65006dd86e64ef9f815e1c7adbd29382","unresolved":false,"context_lines":[{"line_number":410,"context_line":""},{"line_number":411,"context_line":"class ImagesControllerTestV2(ImagesControllerTestV21):"},{"line_number":412,"context_line":"    image_controller_class \u003d images.Controller"},{"line_number":413,"context_line":"    bookmark_base \u003d \u0027/fake\u0027"},{"line_number":414,"context_line":"    http_request \u003d fakes.HTTPRequest"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"    def _check_response(self, controller_method, response, expected_code):"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa1b9901_e876583d","line":413,"updated":"2015-08-25 05:39:44.000000000","message":"We can remove line 413 because of the same line.","commit_id":"1643da941ca51225646074c196dc26792f25b812"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"269d27836390f963c9315d299c0da716aec09eaf","unresolved":false,"context_lines":[{"line_number":410,"context_line":""},{"line_number":411,"context_line":"class ImagesControllerTestV2(ImagesControllerTestV21):"},{"line_number":412,"context_line":"    image_controller_class \u003d images.Controller"},{"line_number":413,"context_line":"    bookmark_base \u003d \u0027/fake\u0027"},{"line_number":414,"context_line":"    http_request \u003d fakes.HTTPRequest"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"    def _check_response(self, controller_method, response, expected_code):"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa1b9901_4dbbbde5","line":413,"in_reply_to":"fa1b9901_e876583d","updated":"2015-08-25 14:01:44.000000000","message":"Done","commit_id":"1643da941ca51225646074c196dc26792f25b812"}],"nova/tests/unit/api/openstack/compute/test_serversV21.py":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"aecb39a1a363024ab76d1cb92c6684e05955008a","unresolved":false,"context_lines":[{"line_number":523,"context_line":"            self.assertEqual(label, labels[index])"},{"line_number":524,"context_line":""},{"line_number":525,"context_line":"    def test_get_server_addresses_nonexistent_network(self):"},{"line_number":526,"context_line":"        url \u003d \u0027/v2/servers/%s/ips/network_0\u0027 % FAKE_UUID"},{"line_number":527,"context_line":"        req \u003d self.req(url)"},{"line_number":528,"context_line":"        self.assertRaises(webob.exc.HTTPNotFound, self.ips_controller.show,"},{"line_number":529,"context_line":"                          req, FAKE_UUID, \u0027network_0\u0027)"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_d3f919ca","line":526,"updated":"2015-08-27 01:39:23.000000000","message":"need tenant_id","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"aecb39a1a363024ab76d1cb92c6684e05955008a","unresolved":false,"context_lines":[{"line_number":687,"context_line":"                          self.controller.index, req)"},{"line_number":688,"context_line":""},{"line_number":689,"context_line":"    def test_get_servers_with_marker(self):"},{"line_number":690,"context_line":"        url \u003d \u0027/v2/servers?marker\u003d%s\u0027 % fakes.get_fake_uuid(2)"},{"line_number":691,"context_line":"        req \u003d self.req(url)"},{"line_number":692,"context_line":"        servers \u003d self.controller.index(req)[\u0027servers\u0027]"},{"line_number":693,"context_line":"        self.assertEqual([s[\u0027name\u0027] for s in servers], [\"server4\", \"server5\"])"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_b30025ac","line":690,"updated":"2015-08-27 01:39:23.000000000","message":"ditto","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"aecb39a1a363024ab76d1cb92c6684e05955008a","unresolved":false,"context_lines":[{"line_number":693,"context_line":"        self.assertEqual([s[\u0027name\u0027] for s in servers], [\"server4\", \"server5\"])"},{"line_number":694,"context_line":""},{"line_number":695,"context_line":"    def test_get_servers_with_limit_and_marker(self):"},{"line_number":696,"context_line":"        url \u003d \u0027/v2/servers?limit\u003d2\u0026marker\u003d%s\u0027 % fakes.get_fake_uuid(1)"},{"line_number":697,"context_line":"        req \u003d self.req(url)"},{"line_number":698,"context_line":"        servers \u003d self.controller.index(req)[\u0027servers\u0027]"},{"line_number":699,"context_line":"        self.assertEqual([s[\u0027name\u0027] for s in servers], [\u0027server3\u0027, \u0027server4\u0027])"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_532c294a","line":696,"updated":"2015-08-27 01:39:23.000000000","message":"ditto","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"aecb39a1a363024ab76d1cb92c6684e05955008a","unresolved":false,"context_lines":[{"line_number":1816,"context_line":"    def test_update_server_name_all_blank_spaces(self):"},{"line_number":1817,"context_line":"        self.stubs.Set(db, \u0027instance_get\u0027,"},{"line_number":1818,"context_line":"                fakes.fake_instance_get(name\u003d\u0027server_test\u0027))"},{"line_number":1819,"context_line":"        req \u003d fakes.HTTPRequest.blank(\u0027/v2/servers/%s\u0027 % FAKE_UUID)"},{"line_number":1820,"context_line":"        req.method \u003d \u0027PUT\u0027"},{"line_number":1821,"context_line":"        req.content_type \u003d \u0027application/json\u0027"},{"line_number":1822,"context_line":"        body \u003d {\u0027server\u0027: {\u0027name\u0027: \u0027 \u0027 * 64}}"}],"source_content_type":"text/x-python","patch_set":10,"id":"fa1b9901_34321ba8","line":1819,"updated":"2015-08-27 01:39:23.000000000","message":"just put \"fake/servers/%s\" % FAKE_UUID is enough, as there is base_rul https://github.com/openstack/nova/blob/master/nova/tests/unit/api/openstack/fakes.py#L273\n\nBut looks like we can use _get_request directly","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"f17aab56ab86f24c48aeeaf942976f268641fae2","unresolved":false,"context_lines":[{"line_number":2134,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":2135,"context_line":"                          self.controller.create,"},{"line_number":2136,"context_line":"                          self.req, body\u003dself.body)"},{"line_number":2137,"context_line":"    # TODO(cyeoh): bp-21-api-unittests"},{"line_number":2138,"context_line":"    # This needs to be ported to the os-networks extension tests"},{"line_number":2139,"context_line":"    # def test_create_server_with_invalid_networks_parameter(self):"},{"line_number":2140,"context_line":"    #     self.ext_mgr.extensions \u003d {\u0027os-networks\u0027: \u0027fake\u0027}"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_876da534","line":2137,"range":{"start_line":2137,"start_character":6,"end_line":2137,"end_character":10},"updated":"2015-08-26 21:10:04.000000000","message":"I don\u0027t think its meaningful to change these blueprint names here?","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"3f47711e404b5fc94ee3ffba3688d638002e4e6e","unresolved":false,"context_lines":[{"line_number":2134,"context_line":"        self.assertRaises(exception.ValidationError,"},{"line_number":2135,"context_line":"                          self.controller.create,"},{"line_number":2136,"context_line":"                          self.req, body\u003dself.body)"},{"line_number":2137,"context_line":"    # TODO(cyeoh): bp-21-api-unittests"},{"line_number":2138,"context_line":"    # This needs to be ported to the os-networks extension tests"},{"line_number":2139,"context_line":"    # def test_create_server_with_invalid_networks_parameter(self):"},{"line_number":2140,"context_line":"    #     self.ext_mgr.extensions \u003d {\u0027os-networks\u0027: \u0027fake\u0027}"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_3d3b65d3","line":2137,"range":{"start_line":2137,"start_character":6,"end_line":2137,"end_character":10},"in_reply_to":"da20952f_876da534","updated":"2015-08-27 17:46:10.000000000","message":"Doh! Search/replace fail. Done.","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"f17aab56ab86f24c48aeeaf942976f268641fae2","unresolved":false,"context_lines":[{"line_number":2226,"context_line":"        self.req.headers[\"content-type\"] \u003d \"application/json\""},{"line_number":2227,"context_line":"        self.controller.create(self.req, body\u003dself.body).obj[\u0027server\u0027]"},{"line_number":2228,"context_line":""},{"line_number":2229,"context_line":"    # TODO(cyeoh): bp-v21-api-unittests"},{"line_number":2230,"context_line":"    # This needs to be ported to the os-keypairs extension tests"},{"line_number":2231,"context_line":"    # def test_create_instance_with_keypairs_enabled(self):"},{"line_number":2232,"context_line":"    #     self.ext_mgr.extensions \u003d {\u0027os-keypairs\u0027: \u0027fake\u0027}"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_0760b534","line":2229,"updated":"2015-08-26 21:10:04.000000000","message":"Ditto","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"3f47711e404b5fc94ee3ffba3688d638002e4e6e","unresolved":false,"context_lines":[{"line_number":2226,"context_line":"        self.req.headers[\"content-type\"] \u003d \"application/json\""},{"line_number":2227,"context_line":"        self.controller.create(self.req, body\u003dself.body).obj[\u0027server\u0027]"},{"line_number":2228,"context_line":""},{"line_number":2229,"context_line":"    # TODO(cyeoh): bp-v21-api-unittests"},{"line_number":2230,"context_line":"    # This needs to be ported to the os-keypairs extension tests"},{"line_number":2231,"context_line":"    # def test_create_instance_with_keypairs_enabled(self):"},{"line_number":2232,"context_line":"    #     self.ext_mgr.extensions \u003d {\u0027os-keypairs\u0027: \u0027fake\u0027}"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_fd340ddf","line":2229,"in_reply_to":"da20952f_0760b534","updated":"2015-08-27 17:46:10.000000000","message":"Done","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"f17aab56ab86f24c48aeeaf942976f268641fae2","unresolved":false,"context_lines":[{"line_number":2250,"context_line":"    #     self.stubs.Set(compute_api.API, \u0027create\u0027, create)"},{"line_number":2251,"context_line":"    #     self._test_create_extra(params)"},{"line_number":2252,"context_line":"    #"},{"line_number":2253,"context_line":"    # TODO(cyeoh): bp-v21-api-unittests"},{"line_number":2254,"context_line":"    # This needs to be ported to the os-networks extension tests"},{"line_number":2255,"context_line":"    # def test_create_instance_with_networks_enabled(self):"},{"line_number":2256,"context_line":"    #     self.ext_mgr.extensions \u003d {\u0027os-networks\u0027: \u0027fake\u0027}"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_2765b944","line":2253,"updated":"2015-08-26 21:10:04.000000000","message":"Ditto","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"3f47711e404b5fc94ee3ffba3688d638002e4e6e","unresolved":false,"context_lines":[{"line_number":2250,"context_line":"    #     self.stubs.Set(compute_api.API, \u0027create\u0027, create)"},{"line_number":2251,"context_line":"    #     self._test_create_extra(params)"},{"line_number":2252,"context_line":"    #"},{"line_number":2253,"context_line":"    # TODO(cyeoh): bp-v21-api-unittests"},{"line_number":2254,"context_line":"    # This needs to be ported to the os-networks extension tests"},{"line_number":2255,"context_line":"    # def test_create_instance_with_networks_enabled(self):"},{"line_number":2256,"context_line":"    #     self.ext_mgr.extensions \u003d {\u0027os-networks\u0027: \u0027fake\u0027}"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_7d579d02","line":2253,"in_reply_to":"da20952f_2765b944","updated":"2015-08-27 17:46:10.000000000","message":"Done","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"aecb39a1a363024ab76d1cb92c6684e05955008a","unresolved":false,"context_lines":[{"line_number":2383,"context_line":"            },"},{"line_number":2384,"context_line":"        }"},{"line_number":2385,"context_line":""},{"line_number":2386,"context_line":"        req \u003d fakes.HTTPRequest.blank(\u0027/v2/servers\u0027)"},{"line_number":2387,"context_line":"        req.method \u003d \u0027POST\u0027"},{"line_number":2388,"context_line":"        req.body \u003d jsonutils.dumps(body)"},{"line_number":2389,"context_line":"        req.headers[\"content-type\"] \u003d \"application/json\""}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_130f91e2","line":2386,"updated":"2015-08-27 01:39:23.000000000","message":"need tenant_id","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"aecb39a1a363024ab76d1cb92c6684e05955008a","unresolved":false,"context_lines":[{"line_number":3006,"context_line":"        self.assertEqual(result, expected)"},{"line_number":3007,"context_line":""},{"line_number":3008,"context_line":"    def test_build_server(self):"},{"line_number":3009,"context_line":"        self_link \u003d \"http://localhost/v2/servers/%s\" % self.uuid"},{"line_number":3010,"context_line":"        bookmark_link \u003d \"http://localhost/servers/%s\" % self.uuid"},{"line_number":3011,"context_line":"        expected_server \u003d {"},{"line_number":3012,"context_line":"            \"server\": {"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_13ca31a2","line":3009,"updated":"2015-08-27 01:39:23.000000000","message":"there miss the tenant_id","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"3f47711e404b5fc94ee3ffba3688d638002e4e6e","unresolved":false,"context_lines":[{"line_number":3006,"context_line":"        self.assertEqual(result, expected)"},{"line_number":3007,"context_line":""},{"line_number":3008,"context_line":"    def test_build_server(self):"},{"line_number":3009,"context_line":"        self_link \u003d \"http://localhost/v2/servers/%s\" % self.uuid"},{"line_number":3010,"context_line":"        bookmark_link \u003d \"http://localhost/servers/%s\" % self.uuid"},{"line_number":3011,"context_line":"        expected_server \u003d {"},{"line_number":3012,"context_line":"            \"server\": {"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_6a07c31c","line":3009,"in_reply_to":"da20952f_13ca31a2","updated":"2015-08-27 17:46:10.000000000","message":"OK, added \u0027fake\u0027 as tenant_id, as in the v2 version of the tests.","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"aecb39a1a363024ab76d1cb92c6684e05955008a","unresolved":false,"context_lines":[{"line_number":3036,"context_line":"                \"links\": ["},{"line_number":3037,"context_line":"                    {"},{"line_number":3038,"context_line":"                        \"rel\": \"self\","},{"line_number":3039,"context_line":"                        \"href\": \"http://localhost/v2/servers/%s\" %"},{"line_number":3040,"context_line":"                                self.uuid,"},{"line_number":3041,"context_line":"                    },"},{"line_number":3042,"context_line":"                    {"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_335df5e9","line":3039,"updated":"2015-08-27 01:39:23.000000000","message":"ditto","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"aecb39a1a363024ab76d1cb92c6684e05955008a","unresolved":false,"context_lines":[{"line_number":3053,"context_line":"    def test_build_server_detail(self):"},{"line_number":3054,"context_line":"        image_bookmark \u003d \"http://localhost/images/5\""},{"line_number":3055,"context_line":"        flavor_bookmark \u003d \"http://localhost/flavors/1\""},{"line_number":3056,"context_line":"        self_link \u003d \"http://localhost/v2/servers/%s\" % self.uuid"},{"line_number":3057,"context_line":"        bookmark_link \u003d \"http://localhost/servers/%s\" % self.uuid"},{"line_number":3058,"context_line":"        expected_server \u003d {"},{"line_number":3059,"context_line":"            \"server\": {"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_93f161d0","line":3056,"updated":"2015-08-27 01:39:23.000000000","message":"ditto","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"aecb39a1a363024ab76d1cb92c6684e05955008a","unresolved":false,"context_lines":[{"line_number":3126,"context_line":""},{"line_number":3127,"context_line":"        image_bookmark \u003d \"http://localhost/images/5\""},{"line_number":3128,"context_line":"        flavor_bookmark \u003d \"http://localhost/flavors/1\""},{"line_number":3129,"context_line":"        self_link \u003d \"http://localhost/v2/servers/%s\" % self.uuid"},{"line_number":3130,"context_line":"        bookmark_link \u003d \"http://localhost/servers/%s\" % self.uuid"},{"line_number":3131,"context_line":"        expected_server \u003d {"},{"line_number":3132,"context_line":"            \"server\": {"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_b3eee5ea","line":3129,"updated":"2015-08-27 01:39:23.000000000","message":"ditto","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"aecb39a1a363024ab76d1cb92c6684e05955008a","unresolved":false,"context_lines":[{"line_number":3285,"context_line":"        self.instance[\u0027progress\u0027] \u003d 100"},{"line_number":3286,"context_line":"        image_bookmark \u003d \"http://localhost/images/5\""},{"line_number":3287,"context_line":"        flavor_bookmark \u003d \"http://localhost/flavors/1\""},{"line_number":3288,"context_line":"        self_link \u003d \"http://localhost/v2/servers/%s\" % self.uuid"},{"line_number":3289,"context_line":"        bookmark_link \u003d \"http://localhost/servers/%s\" % self.uuid"},{"line_number":3290,"context_line":"        expected_server \u003d {"},{"line_number":3291,"context_line":"            \"server\": {"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_13b471f0","line":3288,"updated":"2015-08-27 01:39:23.000000000","message":"ditto","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"aecb39a1a363024ab76d1cb92c6684e05955008a","unresolved":false,"context_lines":[{"line_number":3360,"context_line":""},{"line_number":3361,"context_line":"        image_bookmark \u003d \"http://localhost/images/5\""},{"line_number":3362,"context_line":"        flavor_bookmark \u003d \"http://localhost/flavors/1\""},{"line_number":3363,"context_line":"        self_link \u003d \"http://localhost/v2/servers/%s\" % self.uuid"},{"line_number":3364,"context_line":"        bookmark_link \u003d \"http://localhost/servers/%s\" % self.uuid"},{"line_number":3365,"context_line":"        expected_server \u003d {"},{"line_number":3366,"context_line":"            \"server\": {"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_33b975ea","line":3363,"updated":"2015-08-27 01:39:23.000000000","message":"ditto","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"}],"nova/tests/unit/api/openstack/compute/test_shelve.py":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"aecb39a1a363024ab76d1cb92c6684e05955008a","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"class ShelvePolicyTestV21(test.NoDBTestCase):"},{"line_number":38,"context_line":"    plugin \u003d shelve_v21"},{"line_number":39,"context_line":"    prefix \u003d \u0027v2.1:os-shelve:\u0027"},{"line_number":40,"context_line":"    offload \u003d \u0027shelve_offload\u0027"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_33b095f4","line":39,"updated":"2015-08-27 01:39:23.000000000","message":"This looks like the untitest need update, all the v2.1 policy rule already rename to \"os_compute_api:os-shelve\", and there is new test at llin 133","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"3f47711e404b5fc94ee3ffba3688d638002e4e6e","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"class ShelvePolicyTestV21(test.NoDBTestCase):"},{"line_number":38,"context_line":"    plugin \u003d shelve_v21"},{"line_number":39,"context_line":"    prefix \u003d \u0027v2.1:os-shelve:\u0027"},{"line_number":40,"context_line":"    offload \u003d \u0027shelve_offload\u0027"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":10,"id":"da20952f_bba44fa6","line":39,"in_reply_to":"da20952f_33b095f4","updated":"2015-08-27 17:46:10.000000000","message":"I changed it to \u0027os_compute_api:os-shelve\u0027, but to be honest, it doesn\u0027t matter. You can change it to \u0027foo\u0027 and all the tests still pass. :(","commit_id":"e94a1923183ed3b861ba48af1fa0b51b3e73e44f"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"cdf9aace124fceec4008c3bf4c1f0548cf1f82b6","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"class ShelvePolicyTestV21(test.NoDBTestCase):"},{"line_number":38,"context_line":"    plugin \u003d shelve_v21"},{"line_number":39,"context_line":"    prefix \u003d \u0027os_compute_api:os-shelve\u0027"},{"line_number":40,"context_line":"    offload \u003d \u0027shelve_offload\u0027"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def setUp(self):"}],"source_content_type":"text/x-python","patch_set":11,"id":"da20952f_a9b077de","line":39,"updated":"2015-08-28 00:22:14.000000000","message":"nice catch","commit_id":"97d577a5c9b46b32182bc386c4cfc18bb3ba6a5a"}]}
