)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6983,"name":"YangLei","email":"iamhappg@aliyun.com","username":"YangLei"},"change_message_id":"0698300343df75a6c2b1d28e917da0cb6c25278e","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"introduces skipBecause decorator"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"this change introduces a skipBefore decorator which accepts two args"},{"line_number":10,"context_line":"a bug and a condition; also updates the skip tracker accordingly"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: If53f2ef81d6bddbce284267216254b467046855f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"AAAAS3%2F%2FP9Q%3D","line":9,"updated":"2013-10-01 15:15:05.000000000","message":"\"skipBefore\" should be \"skipBecause\"?","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"introduces skipBecause decorator"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"this change introduces a skipBefore decorator which accepts two args"},{"line_number":10,"context_line":"a bug and a condition; also updates the skip tracker accordingly"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: If53f2ef81d6bddbce284267216254b467046855f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"AAAAS3%2F%2FP50%3D","line":9,"in_reply_to":"AAAAS3%2F%2FP9Q%3D","updated":"2013-10-01 15:47:07.000000000","message":"definitely! not sure how this got there, thanks!","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/api/compute/admin/test_flavors.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":20,"context_line":"from tempest.common.utils.data_utils import rand_int_id"},{"line_number":21,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":22,"context_line":"from tempest import exceptions"},{"line_number":23,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"class FlavorsAdminTestJSON(base.BaseComputeAdminTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQKE%3D","line":23,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports like rand_int_id and rand_name above.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":20,"context_line":"from tempest.common.utils.data_utils import rand_int_id"},{"line_number":21,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":22,"context_line":"from tempest import exceptions"},{"line_number":23,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"class FlavorsAdminTestJSON(base.BaseComputeAdminTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP5Y%3D","line":23,"in_reply_to":"AAAAS3%2F%2FQKE%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/api/compute/images/test_images_oneserver.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":23,"context_line":"from tempest.common.utils.data_utils import parse_image_id"},{"line_number":24,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":25,"context_line":"from tempest import exceptions"},{"line_number":26,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"class ImagesOneServerTestJSON(base.BaseComputeTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQJ8%3D","line":26,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports like parse_image_id and rand_name above.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":23,"context_line":"from tempest.common.utils.data_utils import parse_image_id"},{"line_number":24,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":25,"context_line":"from tempest import exceptions"},{"line_number":26,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"class ImagesOneServerTestJSON(base.BaseComputeTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP5E%3D","line":26,"in_reply_to":"AAAAS3%2F%2FQJ8%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/api/compute/security_groups/test_security_group_rules.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":20,"context_line":"from tempest import config"},{"line_number":21,"context_line":"from tempest import exceptions"},{"line_number":22,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class SecurityGroupRulesTestJSON(base.BaseComputeTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQJ4%3D","line":22,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":20,"context_line":"from tempest import config"},{"line_number":21,"context_line":"from tempest import exceptions"},{"line_number":22,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class SecurityGroupRulesTestJSON(base.BaseComputeTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP5A%3D","line":22,"in_reply_to":"AAAAS3%2F%2FQJ4%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/api/compute/security_groups/test_security_groups.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":21,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":22,"context_line":"from tempest import config"},{"line_number":23,"context_line":"from tempest import exceptions"},{"line_number":24,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"class SecurityGroupsTestJSON(base.BaseComputeTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQJg%3D","line":24,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":21,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":22,"context_line":"from tempest import config"},{"line_number":23,"context_line":"from tempest import exceptions"},{"line_number":24,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"class SecurityGroupsTestJSON(base.BaseComputeTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP44%3D","line":24,"in_reply_to":"AAAAS3%2F%2FQJg%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/api/compute/servers/test_list_server_filters.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":20,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":21,"context_line":"from tempest import config"},{"line_number":22,"context_line":"from tempest import exceptions"},{"line_number":23,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"class ListServerFiltersTestJSON(base.BaseComputeTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQJc%3D","line":23,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":20,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":21,"context_line":"from tempest import config"},{"line_number":22,"context_line":"from tempest import exceptions"},{"line_number":23,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"class ListServerFiltersTestJSON(base.BaseComputeTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP40%3D","line":23,"in_reply_to":"AAAAS3%2F%2FQJc%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/api/compute/servers/test_server_actions.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"import base64"},{"line_number":19,"context_line":"import testtools"},{"line_number":20,"context_line":"import time"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"from tempest.api import compute"},{"line_number":23,"context_line":"from tempest.api.compute import base"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQJM%3D","line":20,"updated":"2013-10-01 14:26:36.000000000","message":"time is part of the python stdlib I believe. Why did you move it into the 3rd party import block?","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"import base64"},{"line_number":19,"context_line":"import testtools"},{"line_number":20,"context_line":"import time"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"from tempest.api import compute"},{"line_number":23,"context_line":"from tempest.api.compute import base"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP4M%3D","line":20,"in_reply_to":"AAAAS3%2F%2FQJM%3D","updated":"2013-10-01 15:47:07.000000000","message":"well actually it was there before, I only made the import order alphabetically ... but I can\u0027t remove it or time.time() won\u0027t work","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":25,"context_line":"from tempest.common.utils.linux.remote_client import RemoteClient"},{"line_number":26,"context_line":"import tempest.config"},{"line_number":27,"context_line":"from tempest import exceptions"},{"line_number":28,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"class ServerActionsTestJSON(base.BaseComputeTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQJY%3D","line":28,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":25,"context_line":"from tempest.common.utils.linux.remote_client import RemoteClient"},{"line_number":26,"context_line":"import tempest.config"},{"line_number":27,"context_line":"from tempest import exceptions"},{"line_number":28,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"class ServerActionsTestJSON(base.BaseComputeTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP3k%3D","line":28,"in_reply_to":"AAAAS3%2F%2FQJY%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/api/compute/servers/test_virtual_interfaces.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":21,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":22,"context_line":"from tempest import config"},{"line_number":23,"context_line":"from tempest import exceptions"},{"line_number":24,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"class VirtualInterfacesTestJSON(base.BaseComputeTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQJI%3D","line":24,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":21,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":22,"context_line":"from tempest import config"},{"line_number":23,"context_line":"from tempest import exceptions"},{"line_number":24,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"class VirtualInterfacesTestJSON(base.BaseComputeTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP3g%3D","line":24,"in_reply_to":"AAAAS3%2F%2FQJI%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/api/identity/admin/v3/test_tokens.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":18,"context_line":"from tempest.api.identity import base"},{"line_number":19,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":20,"context_line":"from tempest import exceptions"},{"line_number":21,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"class UsersTestJSON(base.BaseIdentityAdminTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQJE%3D","line":21,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":18,"context_line":"from tempest.api.identity import base"},{"line_number":19,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":20,"context_line":"from tempest import exceptions"},{"line_number":21,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"class UsersTestJSON(base.BaseIdentityAdminTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP3c%3D","line":21,"in_reply_to":"AAAAS3%2F%2FQJE%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/api/object_storage/test_container_sync.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from tempest.api.object_storage import base"},{"line_number":21,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":22,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class ContainerSyncTest(base.BaseObjectTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQI8%3D","line":22,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from tempest.api.object_storage import base"},{"line_number":21,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":22,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class ContainerSyncTest(base.BaseObjectTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP3U%3D","line":22,"in_reply_to":"AAAAS3%2F%2FQI8%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/api/object_storage/test_object_expiry.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":21,"context_line":"from tempest.common.utils.data_utils import arbitrary_string"},{"line_number":22,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":23,"context_line":"from tempest import exceptions"},{"line_number":24,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"class ObjectExpiryTest(base.BaseObjectTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQI4%3D","line":24,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":21,"context_line":"from tempest.common.utils.data_utils import arbitrary_string"},{"line_number":22,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":23,"context_line":"from tempest import exceptions"},{"line_number":24,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"class ObjectExpiryTest(base.BaseObjectTest):"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP3Q%3D","line":24,"in_reply_to":"AAAAS3%2F%2FQI4%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/test.py":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"2d89044767fdd305d2579ff0df6b5a8c102b5452","unresolved":false,"context_lines":[{"line_number":103,"context_line":"    return decorator"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"def skipBecause(*args, **kwargs):"},{"line_number":107,"context_line":"    \"\"\"A decorator useful to skip tests hitting known bugs"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"    @param bug: bug number causing the test to skip"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAS3%2F%2FOE4%3D","line":106,"updated":"2013-10-02 02:07:00.000000000","message":"I\u0027m just wondering if this should be skip_because?","commit_id":"ee3decf1fa937dec3f3c5bda63f79d5fb94d0f86"}],"tempest/thirdparty/boto/test_ec2_instance_run.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":22,"context_line":"from tempest.common.utils.linux.remote_client import RemoteClient"},{"line_number":23,"context_line":"from tempest import exceptions"},{"line_number":24,"context_line":"from tempest.openstack.common import log as logging"},{"line_number":25,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":26,"context_line":"from tempest.thirdparty.boto.test import BotoTestCase"},{"line_number":27,"context_line":"from tempest.thirdparty.boto.utils.s3 import s3_upload_dir"},{"line_number":28,"context_line":"from tempest.thirdparty.boto.utils.wait import re_search_wait"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQIs%3D","line":25,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":22,"context_line":"from tempest.common.utils.linux.remote_client import RemoteClient"},{"line_number":23,"context_line":"from tempest import exceptions"},{"line_number":24,"context_line":"from tempest.openstack.common import log as logging"},{"line_number":25,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":26,"context_line":"from tempest.thirdparty.boto.test import BotoTestCase"},{"line_number":27,"context_line":"from tempest.thirdparty.boto.utils.s3 import s3_upload_dir"},{"line_number":28,"context_line":"from tempest.thirdparty.boto.utils.wait import re_search_wait"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP3I%3D","line":25,"in_reply_to":"AAAAS3%2F%2FQIs%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/thirdparty/boto/test_ec2_keys.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from tempest import clients"},{"line_number":19,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":20,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":21,"context_line":"from tempest.thirdparty.boto.test import BotoTestCase"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQIo%3D","line":20,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from tempest import clients"},{"line_number":19,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":20,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":21,"context_line":"from tempest.thirdparty.boto.test import BotoTestCase"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP3E%3D","line":20,"in_reply_to":"AAAAS3%2F%2FQIo%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/thirdparty/boto/test_ec2_network.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":16,"context_line":"#    under the License."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from tempest import clients"},{"line_number":19,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":20,"context_line":"from tempest.thirdparty.boto.test import BotoTestCase"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQIg%3D","line":19,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":16,"context_line":"#    under the License."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from tempest import clients"},{"line_number":19,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":20,"context_line":"from tempest.thirdparty.boto.test import BotoTestCase"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP3A%3D","line":19,"in_reply_to":"AAAAS3%2F%2FQIg%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tempest/thirdparty/boto/test_s3_buckets.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"248f8d0ba4a4056ad459e86b7708564fc3e725a1","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from tempest import clients"},{"line_number":19,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":20,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":21,"context_line":"from tempest.thirdparty.boto.test import BotoTestCase"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FQIY%3D","line":20,"updated":"2013-10-01 14:26:36.000000000","message":"Make this 2 separate imports.","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"},{"author":{"_account_id":6796,"name":"Giulio Fidente","email":"gfidente@redhat.com","username":"gfidente"},"change_message_id":"5e460dd2cfc666b954a8efabb63dc1926cebc8cd","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from tempest import clients"},{"line_number":19,"context_line":"from tempest.common.utils.data_utils import rand_name"},{"line_number":20,"context_line":"from tempest.test import attr, skipBecause"},{"line_number":21,"context_line":"from tempest.thirdparty.boto.test import BotoTestCase"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAS3%2F%2FP28%3D","line":20,"in_reply_to":"AAAAS3%2F%2FQIY%3D","updated":"2013-10-01 15:47:07.000000000","message":"Done","commit_id":"5bb3efb952b02ff59974e47339b47f3f59cd9c3c"}],"tools/skip_tracker.py":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"926fe94b8d515d3a8094f60f3afd2dc0fdfbcc4a","unresolved":false,"context_lines":[{"line_number":61,"context_line":"    \"\"\""},{"line_number":62,"context_line":"    Return the skip tuples in a test file"},{"line_number":63,"context_line":"    \"\"\""},{"line_number":64,"context_line":"    BUG_RE \u003d re.compile(r\u0027.*Skipped until the Bug #(\\d+) is resolved\u0027)"},{"line_number":65,"context_line":"    DEF_RE \u003d re.compile(r\u0027\\s*def (\\w+)\\(\u0027)"},{"line_number":66,"context_line":"    bug_found \u003d False"},{"line_number":67,"context_line":"    results \u003d []"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAS3%2F%2Fhh0%3D","line":64,"updated":"2013-09-25 08:57:56.000000000","message":"I think it would be better if the message was of the format:\n\n\"Skip until Bug #(\\d+) is resolved\"","commit_id":"08903d5e5b708f2f0d9f237d1bde03043bf720f7"}]}
