)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"4562856022cd065ed16d3f372f9e74e57db7b2d0","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     ivan-zhu \u003cbozhu@linux.vnet.ibm.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2013-12-03 15:45:16 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"prot servers negative tests into v3 Part2"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"this ports servers negative tests into v3and do some"},{"line_number":10,"context_line":"corresponding change in the client. this also ports"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"AAAATn%2F97mM%3D","line":7,"updated":"2013-12-04 10:28:43.000000000","message":"s/prot/port/","commit_id":"cb9089ab01d063e620965ee450b03ac794666be8"}],"tempest/api/compute/v3/servers/test_server_actions.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"518182e86d1e9b8269b1f17ed185ed036ee57eea","unresolved":false,"context_lines":[{"line_number":289,"context_line":"            self.assertEqual(lines, 10)"},{"line_number":290,"context_line":"        self.wait_for(get_output)"},{"line_number":291,"context_line":""},{"line_number":292,"context_line":"    @skip_because(bug\u003d\"1014683\")"},{"line_number":293,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":294,"context_line":"    def test_get_console_output_server_id_in_reboot_status(self):"},{"line_number":295,"context_line":"        # Positive test:Should be able to GET the console output"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAATn%2F9J6A%3D","line":292,"updated":"2013-12-16 08:32:32.000000000","message":"need a change I4b06b148b5d9bceda0cef2d2bb5f3b72325928ac for fixing this problem.","commit_id":"3eace05d732f2b95a247497b1c6f23fb35dd5f1c"}],"tempest/api/compute/v3/servers/test_servers_negative.py":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"839115c5041c117d71ffffc3455b07220f54a5c1","unresolved":false,"context_lines":[{"line_number":184,"context_line":"                          name\u003dserver_name)"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"    @testtools.skipIf(not CONF.service_available.neutron,"},{"line_number":187,"context_line":"                      \u0027neutron not available\u0027)"},{"line_number":188,"context_line":"    @attr(type\u003d[\u0027negative\u0027, \u0027gate\u0027])"},{"line_number":189,"context_line":"    def test_create_with_invalid_network_uuid(self):"},{"line_number":190,"context_line":"        # Pass invalid network uuid while creating a server"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAATn%2F%2FKjE%3D","line":187,"updated":"2013-11-13 14:18:30.000000000","message":"Why we need a skipIf only for v3 test?","commit_id":"0fdfdfebf52669399ad5cf9c28e8ba1eb7938dae"}],"tempest/common/waiters.py":[{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"58c57e36d4e72a654f8ad5efc8a9786271a93624","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    def _get_task_state(body):"},{"line_number":32,"context_line":"        task_state \u003d body.get(\u0027OS-EXT-STS:task_state\u0027, None)"},{"line_number":33,"context_line":"        # NOTE(ivan-zhu): maybe we use nova v3 api, try it."},{"line_number":34,"context_line":"        if task_state is None:"},{"line_number":35,"context_line":"            task_state \u003d body.get(\"os-extended-status:task_state\", None)"},{"line_number":36,"context_line":"        return task_state"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAATn%2F9vAw%3D","line":33,"updated":"2013-12-06 15:36:34.000000000","message":"We are trying to avoid conditional v2/v3 code and this is a little fragile. Since this is only called from the clients, it would be better to just pass in the expected string to use for getting the task_state.","commit_id":"f00c4e893d7dbc0a0cc8bb31b2c3505ab9b9bdc0"},{"author":{"_account_id":5586,"name":"Ivan-Zhu","email":"zhubo198511@gmail.com","username":"ivan-zhu"},"change_message_id":"9ac5f637438131cce366adf5d695fcc0d77df6c9","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    def _get_task_state(body):"},{"line_number":32,"context_line":"        task_state \u003d body.get(\u0027OS-EXT-STS:task_state\u0027, None)"},{"line_number":33,"context_line":"        # NOTE(ivan-zhu): maybe we use nova v3 api, try it."},{"line_number":34,"context_line":"        if task_state is None:"},{"line_number":35,"context_line":"            task_state \u003d body.get(\"os-extended-status:task_state\", None)"},{"line_number":36,"context_line":"        return task_state"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAATn%2F9Ln0%3D","line":33,"in_reply_to":"AAAATn%2F9vAw%3D","updated":"2013-12-15 14:41:05.000000000","message":"hi, David Kranz\nApologies for the slow reply. just notice it.\nIf we add a parameter to pass the expected string, we need change many places in v3 files, and also need remove these changes when remove v2 tests.\n\nHow about use the following:\nif client.service \u003d\u003d CONFIG.compute.catalog_v3_type:\n     task_state \u003d body.get(\"os-extended-status:task_state\", None)\nelse:\n    task_state \u003d body.get(\u0027OS-EXT-STS:task_state\u0027, None)\n\nI think only one conditional v2/v3 code here is ok, because we can remove it easily when remove the v2 tests.","commit_id":"f00c4e893d7dbc0a0cc8bb31b2c3505ab9b9bdc0"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"77096b41a77d558e166dacc9b4019448c68bd70c","unresolved":false,"context_lines":[{"line_number":26,"context_line":"# NOTE(afazekas): This function needs to know a token and a subject."},{"line_number":27,"context_line":"def wait_for_server_status(client, server_id, status, ready_wait\u003dTrue,"},{"line_number":28,"context_line":"                           extra_timeout\u003d0, raise_on_error\u003dTrue,"},{"line_number":29,"context_line":"                           expexted_task_state_string\u003d\u0027OS-EXT-STS:task_state\u0027):"},{"line_number":30,"context_line":"    \"\"\"Waits for a server to reach a given status.\"\"\""},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    def _get_task_state(body):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9LOU%3D","line":29,"updated":"2013-12-15 22:07:36.000000000","message":"This is mis-spelled and not even necessary or used.","commit_id":"bf388bd5b03bdc852a7e0c33917a65d83aa79737"},{"author":{"_account_id":5586,"name":"Ivan-Zhu","email":"zhubo198511@gmail.com","username":"ivan-zhu"},"change_message_id":"97a7cdf442c76e05d8678104ce662789e974757f","unresolved":false,"context_lines":[{"line_number":26,"context_line":"# NOTE(afazekas): This function needs to know a token and a subject."},{"line_number":27,"context_line":"def wait_for_server_status(client, server_id, status, ready_wait\u003dTrue,"},{"line_number":28,"context_line":"                           extra_timeout\u003d0, raise_on_error\u003dTrue,"},{"line_number":29,"context_line":"                           expexted_task_state_string\u003d\u0027OS-EXT-STS:task_state\u0027):"},{"line_number":30,"context_line":"    \"\"\"Waits for a server to reach a given status.\"\"\""},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    def _get_task_state(body):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9Kow%3D","line":29,"in_reply_to":"AAAATn%2F9LOU%3D","updated":"2013-12-16 03:15:13.000000000","message":"sorry, my mistake.","commit_id":"bf388bd5b03bdc852a7e0c33917a65d83aa79737"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"77096b41a77d558e166dacc9b4019448c68bd70c","unresolved":false,"context_lines":[{"line_number":30,"context_line":"    \"\"\"Waits for a server to reach a given status.\"\"\""},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    def _get_task_state(body):"},{"line_number":33,"context_line":"        if client.service \u003d\u003d CONFIG.compute.catalog_v3_type:"},{"line_number":34,"context_line":"            task_state \u003d body.get(\"os-extended-status:task_state\", None)"},{"line_number":35,"context_line":"        else:"},{"line_number":36,"context_line":"            task_state \u003d body.get(\u0027OS-EXT-STS:task_state\u0027, None)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9LOQ%3D","line":33,"updated":"2013-12-15 22:07:36.000000000","message":"OK, this conditional is ok. It was really the \"try one, if that fails then the other\" that was most problematic.","commit_id":"bf388bd5b03bdc852a7e0c33917a65d83aa79737"},{"author":{"_account_id":5174,"name":"Mauro Sergio Martins Rodrigues","email":"maurosr@linux.vnet.ibm.com","username":"maurosr"},"change_message_id":"a97b83bf08c67561f367e154c4e27c38cd7a0a1b","unresolved":false,"context_lines":[{"line_number":26,"context_line":"# NOTE(afazekas): This function needs to know a token and a subject."},{"line_number":27,"context_line":"def wait_for_server_status(client, server_id, status, ready_wait\u003dTrue,"},{"line_number":28,"context_line":"                           extra_timeout\u003d0, raise_on_error\u003dTrue,"},{"line_number":29,"context_line":"                           expexted_task_state_string\u003d\u0027OS-EXT-STS:task_state\u0027):"},{"line_number":30,"context_line":"    \"\"\"Waits for a server to reach a given status.\"\"\""},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    def _get_task_state(body):"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAATn%2F9HEw%3D","line":29,"updated":"2013-12-16 17:52:52.000000000","message":"typo in the parameter name: using expe*x*ted instead of expected_task_state_string.\n\nbtw didn\u0027t see where do you use it here.","commit_id":"88ae1c594aea13b4f00c396b17e2962bf2241424"}]}
