)]}'
{"tempest/api/compute/admin/test_migrations.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"0dcd372ac32cbd982b31e0447a33667253307faa","unresolved":false,"context_lines":[{"line_number":34,"context_line":"        cls.admin_hosts_client \u003d cls.os_adm.hosts_client"},{"line_number":35,"context_line":"        cls.admin_servers_client \u003d cls.os_adm.servers_client"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"    def _get_server_details(self, server_id):"},{"line_number":38,"context_line":"        body \u003d self.admin_servers_client.show_server(server_id)[\u0027server\u0027]"},{"line_number":39,"context_line":"        return body"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"    def _get_host_for_server(self, server_id):"},{"line_number":42,"context_line":"        return self._get_server_details(server_id)[\u0027OS-EXT-SRV-ATTR:host\u0027]"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"    @test.idempotent_id(\u002775c0b83d-72a0-4cf8-a153-631e83e7d53f\u0027)"},{"line_number":45,"context_line":"    def test_list_migrations(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_830c7c3c","line":42,"range":{"start_line":37,"start_character":0,"end_line":42,"end_character":74},"updated":"2016-09-15 18:09:15.000000000","message":"I don\u0027t think the above wrapper method is necessary so much.","commit_id":"3ef501a877e02bad50ef69b5e706e05723bd2bc7"},{"author":{"_account_id":16437,"name":"Anna Babich","email":"anna.v.babich@gmail.com","username":"ababich"},"change_message_id":"6051fbf65b2d4cd9c15ad5fac753731401710ac2","unresolved":false,"context_lines":[{"line_number":112,"context_line":"    def test_cold_migration(self):"},{"line_number":113,"context_line":"        host_client \u003d self.admin_hosts_client"},{"line_number":114,"context_line":"        hosts \u003d host_client.list_hosts()[\u0027hosts\u0027]"},{"line_number":115,"context_line":"        computes \u003d [x for x in hosts if x[\u0027service\u0027] \u003d\u003d \u0027compute\u0027]"},{"line_number":116,"context_line":"        if len(computes) \u003c 2:"},{"line_number":117,"context_line":"            msg \u003d \"Less than 2 compute nodes, skipping multinode tests.\""},{"line_number":118,"context_line":"            raise self.skipException(msg)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a8bc5a2_1f4dfa3d","line":115,"updated":"2016-09-26 14:36:57.000000000","message":"Do we really need this check? We have the \u0027min_compute_nodes\u0027 parameter in config.py equal to \u00271\u0027 by default. So, all non-multinode tests will be skipped automatically","commit_id":"f715f177f5469eaf7c5bf417098a181adaf2b16b"},{"author":{"_account_id":17973,"name":"Ludovic Beliveau","email":"lbeliveau@gmail.com","username":"lbeliveau"},"change_message_id":"2242cf3d8bcd7b8673e565d7f2f6ac38afb286ac","unresolved":false,"context_lines":[{"line_number":112,"context_line":"    def test_cold_migration(self):"},{"line_number":113,"context_line":"        host_client \u003d self.admin_hosts_client"},{"line_number":114,"context_line":"        hosts \u003d host_client.list_hosts()[\u0027hosts\u0027]"},{"line_number":115,"context_line":"        computes \u003d [x for x in hosts if x[\u0027service\u0027] \u003d\u003d \u0027compute\u0027]"},{"line_number":116,"context_line":"        if len(computes) \u003c 2:"},{"line_number":117,"context_line":"            msg \u003d \"Less than 2 compute nodes, skipping multinode tests.\""},{"line_number":118,"context_line":"            raise self.skipException(msg)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a8bc5a2_370ffe37","line":115,"in_reply_to":"5a8bc5a2_1f4dfa3d","updated":"2016-09-27 13:47:30.000000000","message":"Done","commit_id":"f715f177f5469eaf7c5bf417098a181adaf2b16b"}]}
