)]}'
{"novaclient/tests/functional/test_fixedips.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e7196d651f3169354bff3c69720a005a93d33af9","unresolved":false,"context_lines":[{"line_number":32,"context_line":"        networks \u003d server.networks"},{"line_number":33,"context_line":"        self.assertIn(\u0027private\u0027, networks)"},{"line_number":34,"context_line":"        fixed_ip \u003d networks[\u0027private\u0027][0]"},{"line_number":35,"context_line":"        table \u003d self.nova(\u0027fixed-ip-get %s\u0027 % fixed_ip)"},{"line_number":36,"context_line":"        if expect_reserved:"},{"line_number":37,"context_line":"            reserved \u003d self._get_column_value_from_single_row_table(table,"},{"line_number":38,"context_line":"                                                                    \u0027reserved\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba15a1d1_9ab9f07b","line":35,"updated":"2015-09-16 20:25:55.000000000","message":"I guess I should actually check that address/cidr/hostname/host are what we expect.","commit_id":"00b90a4958e3f73cee362c77ed725dba47ba35bb"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"e1da3877848f7a2e7632fe8bcb4038f56db167f4","unresolved":false,"context_lines":[{"line_number":20,"context_line":"class TestFixedIPsNovaClient(base.ClientTestBase):"},{"line_number":21,"context_line":"    \"\"\"FixedIPs functional tests.\"\"\""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    API_VERSION \u003d \u00272.1\u0027"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def nova(self, *args, **kwargs):"},{"line_number":26,"context_line":"        flags \u003d \u0027--os-compute-api-version %s \u0027 % self.API_VERSION"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_ab65881e","line":23,"updated":"2015-09-16 21:46:52.000000000","message":"Just note for future: we need to move L24-27 to base.ClientTestBase, since most functional tests are designed for v2.0/v.2.1, but they are launched on latest version.","commit_id":"5fdb861ad4835513c0cb78251cce85ac73f51dd4"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"f81ec4ca6222f56e869a6d2e58433e8b0f91ff20","unresolved":false,"context_lines":[{"line_number":20,"context_line":"class TestFixedIPsNovaClient(base.ClientTestBase):"},{"line_number":21,"context_line":"    \"\"\"FixedIPs functional tests.\"\"\""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    API_VERSION \u003d \u00272.1\u0027"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def nova(self, *args, **kwargs):"},{"line_number":26,"context_line":"        flags \u003d \u0027--os-compute-api-version %s \u0027 % self.API_VERSION"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_228f392b","line":23,"in_reply_to":"ba15a1d1_029d55bb","updated":"2015-09-17 13:50:17.000000000","message":"Microversion 2.2(key-pair change) adds optional parameters, so if new parameter is not added response will be equal to v2.1.\n\nBtw, https://review.openstack.org/#/c/224593/","commit_id":"5fdb861ad4835513c0cb78251cce85ac73f51dd4"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"983ba08b76a287e25391d3c64a76dff8b6c3bd69","unresolved":false,"context_lines":[{"line_number":20,"context_line":"class TestFixedIPsNovaClient(base.ClientTestBase):"},{"line_number":21,"context_line":"    \"\"\"FixedIPs functional tests.\"\"\""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    API_VERSION \u003d \u00272.1\u0027"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    def nova(self, *args, **kwargs):"},{"line_number":26,"context_line":"        flags \u003d \u0027--os-compute-api-version %s \u0027 % self.API_VERSION"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_029d55bb","line":23,"in_reply_to":"ba15a1d1_ab65881e","updated":"2015-09-17 13:45:00.000000000","message":"Yeah, I was wondering about that which is why I needed this workaround here.  Honestly, I wasn\u0027t sure how the keypair functional tests were working.","commit_id":"5fdb861ad4835513c0cb78251cce85ac73f51dd4"}],"novaclient/v2/shell.py":[{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"79b8b90203ffab1db00622b90689771a33a9ebbc","unresolved":false,"context_lines":[{"line_number":3626,"context_line":"    \"\"\"Retrieve info on a fixed IP.\"\"\""},{"line_number":3627,"context_line":"    result \u003d cs.fixed_ips.get(args.fixed_ip)"},{"line_number":3628,"context_line":"    fields \u003d [\u0027address\u0027, \u0027cidr\u0027, \u0027hostname\u0027, \u0027host\u0027]"},{"line_number":3629,"context_line":"    # NOTE(mriedem): The v2.4 microversion adds the reserved boolean to the"},{"line_number":3630,"context_line":"    # fixed_ip response, so it won\u0027t be there if using \u003c v2.4."},{"line_number":3631,"context_line":"    if hasattr(result, \u0027reserved\u0027):"},{"line_number":3632,"context_line":"        fields.append(\u0027reserved\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba15a1d1_3016c34c","line":3629,"updated":"2015-09-16 20:54:59.000000000","message":"Please, create a separate functions for each version instead of hasattr:\n\n@api_versions.wraps(\"2.0\", \"2.3\")\ndef _print_fixed_ips(cs, results):\n    fields \u003d [...]\n    utils.print_list(...)\n\n@api_versions.wraps(\"2.4\")\ndef _print_fixed_ips(cs, results):\n    fields \u003d [...]\n    utils.print_list(...)","commit_id":"aa8f7edb3fbb530a6cb592d7dfd60188f4f5f9be"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a5ca1fbba174e9ea76dd512d2142abc069fff56c","unresolved":false,"context_lines":[{"line_number":3626,"context_line":"    \"\"\"Retrieve info on a fixed IP.\"\"\""},{"line_number":3627,"context_line":"    result \u003d cs.fixed_ips.get(args.fixed_ip)"},{"line_number":3628,"context_line":"    fields \u003d [\u0027address\u0027, \u0027cidr\u0027, \u0027hostname\u0027, \u0027host\u0027]"},{"line_number":3629,"context_line":"    # NOTE(mriedem): The v2.4 microversion adds the reserved boolean to the"},{"line_number":3630,"context_line":"    # fixed_ip response, so it won\u0027t be there if using \u003c v2.4."},{"line_number":3631,"context_line":"    if hasattr(result, \u0027reserved\u0027):"},{"line_number":3632,"context_line":"        fields.append(\u0027reserved\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba15a1d1_0bb5942f","line":3629,"in_reply_to":"ba15a1d1_3016c34c","updated":"2015-09-16 21:22:19.000000000","message":"Done","commit_id":"aa8f7edb3fbb530a6cb592d7dfd60188f4f5f9be"}]}
