)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"2ef253c187365436fabd00d7c76b1af94668b99c","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"setUpClass/tearDownClass full chain"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Ensure the setUpClass/tearDownClass methods calls the super propely."},{"line_number":10,"context_line":"The setUpClass call tested at setUp time, the tearDownClass at exit"},{"line_number":11,"context_line":"time."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"AAAARH%2F%2F93I%3D","line":9,"updated":"2013-08-14 13:56:49.000000000","message":"s/propely/properly","commit_id":"bbf9d498fa34151bfd49337eca72ad9bfef71c2a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bf689ae97a487fd545482fce48f16e2f600f1ff1","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"super calling issues are also fixed."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Implements blueprint stop-leaking"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Change-Id: I266efe0cd363b330b1511e7e983dab9f62778848"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"AAAARH%2F%2F910%3D","line":15,"updated":"2013-08-14 14:07:07.000000000","message":"This also Closes-Bug: #1212071","commit_id":"bbf9d498fa34151bfd49337eca72ad9bfef71c2a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f2f83de0ccb3ebd7ec5a80bc527e42bbd916199d","unresolved":false,"context_lines":[{"line_number":13,"context_line":"super calling issues are also fixed."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Implements blueprint stop-leaking"},{"line_number":16,"context_line":"This also Closes-Bug: #1212071"},{"line_number":17,"context_line":"Change-Id: I266efe0cd363b330b1511e7e983dab9f62778848"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"AAAARH%2F%2F9zc%3D","line":16,"updated":"2013-08-14 14:18:48.000000000","message":"Remove the \"This also\" part, it\u0027s apparently causing the pattern match for launchpad to not work.","commit_id":"57940a172376ca6e35a55e5196f210017db7c1ba"}],"tempest/api/object_storage/base.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"e3a4f8a008e6b30fa02e5c2b6fd6eed1e4fcecad","unresolved":false,"context_lines":[{"line_number":29,"context_line":"        if not cls.config.service_available.swift:"},{"line_number":30,"context_line":"            skip_msg \u003d (\"%s skipped as swift is not available\" % cls.__name__)"},{"line_number":31,"context_line":"            raise cls.skipException(skip_msg)"},{"line_number":32,"context_line":"        super(BaseObjectTest, cls).setUpClass()"},{"line_number":33,"context_line":"        cls.os \u003d clients.Manager()"},{"line_number":34,"context_line":"        cls.object_client \u003d cls.os.object_client"},{"line_number":35,"context_line":"        cls.container_client \u003d cls.os.container_client"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2FSmg%3D","line":32,"updated":"2013-08-02 14:04:05.000000000","message":"shouldn\u0027t we do setupClass first?","commit_id":"6b4980cfc5e2b72efaeee17d5c1ae8c695519e6b"}],"tempest/scenario/manager.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"e3a4f8a008e6b30fa02e5c2b6fd6eed1e4fcecad","unresolved":false,"context_lines":[{"line_number":210,"context_line":"                    if e.__class__.__name__ \u003d\u003d \u0027NotFound\u0027:"},{"line_number":211,"context_line":"                        return True"},{"line_number":212,"context_line":"                    raise"},{"line_number":213,"context_line":"                return False"},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"            # Block until resource deletion has completed or timed-out"},{"line_number":216,"context_line":"            tempest.test.call_until_true(is_deletion_complete, 10, 1)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2FSmE%3D","line":213,"updated":"2013-08-02 14:04:05.000000000","message":"we need to make sure that we still get to the final tear down, so we can\u0027t return false here.","commit_id":"6b4980cfc5e2b72efaeee17d5c1ae8c695519e6b"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"e4390f4f10e1a780441b90eaad7de24820b84823","unresolved":false,"context_lines":[{"line_number":210,"context_line":"                    if e.__class__.__name__ \u003d\u003d \u0027NotFound\u0027:"},{"line_number":211,"context_line":"                        return True"},{"line_number":212,"context_line":"                    raise"},{"line_number":213,"context_line":"                return False"},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"            # Block until resource deletion has completed or timed-out"},{"line_number":216,"context_line":"            tempest.test.call_until_true(is_deletion_complete, 10, 1)"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAQn%2F%2FAAU%3D","side":"PARENT","line":213,"updated":"2013-08-08 16:57:00.000000000","message":"This still has the problem of throwing past the super tearDown if the wait time out, no?","commit_id":"355b89fbb76a9e84bc855c22958c4b371a6afe85"},{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"ef1286cf046ebb22d8f55241a4886e1875d56f4d","unresolved":false,"context_lines":[{"line_number":210,"context_line":"                    if e.__class__.__name__ \u003d\u003d \u0027NotFound\u0027:"},{"line_number":211,"context_line":"                        return True"},{"line_number":212,"context_line":"                    raise"},{"line_number":213,"context_line":"                return False"},{"line_number":214,"context_line":""},{"line_number":215,"context_line":"            # Block until resource deletion has completed or timed-out"},{"line_number":216,"context_line":"            tempest.test.call_until_true(is_deletion_complete, 10, 1)"}],"source_content_type":"text/x-python","patch_set":7,"id":"AAAAQ3%2F%2F9bU%3D","side":"PARENT","line":213,"in_reply_to":"AAAAQn%2F%2FAAU%3D","updated":"2013-08-12 13:25:54.000000000","message":"Looks like no exception is raised on timeout?","commit_id":"355b89fbb76a9e84bc855c22958c4b371a6afe85"}],"tempest/test.py":[{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"453f74dc6b22efafb5e5462600b0a4aac887b3e5","unresolved":false,"context_lines":[{"line_number":97,"context_line":""},{"line_number":98,"context_line":"def validate_tearDownClass():"},{"line_number":99,"context_line":"    if at_exit_set:"},{"line_number":100,"context_line":"        raise RuntimeError(\"tearDownClass does not called for \""},{"line_number":101,"context_line":"                           + str(at_exit_set))"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"atexit.register(validate_tearDownClass)"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAQ3%2F%2F3pY%3D","line":100,"updated":"2013-08-13 19:07:14.000000000","message":"Same as below.","commit_id":"5ff3257e5cb26d8db5df2851b32d96c5f7a5fdcd"},{"author":{"_account_id":5196,"name":"Matthew Treinish","email":"mtreinish@kortar.org","username":"treinish"},"change_message_id":"453f74dc6b22efafb5e5462600b0a4aac887b3e5","unresolved":false,"context_lines":[{"line_number":126,"context_line":"    def setUp(self):"},{"line_number":127,"context_line":"        super(BaseTestCase, self).setUp()"},{"line_number":128,"context_line":"        if not self.setUpClassCalled:"},{"line_number":129,"context_line":"            raise RuntimeError(\"setUpClass does not called for \""},{"line_number":130,"context_line":"                               + self.__class__.__name__)"},{"line_number":131,"context_line":"        at_exit_set.add(self.__class__)"},{"line_number":132,"context_line":"        test_timeout \u003d os.environ.get(\u0027OS_TEST_TIMEOUT\u0027, 0)"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAQ3%2F%2F3pk%3D","line":129,"updated":"2013-08-13 19:07:14.000000000","message":"I think this message just needs to be a bit clearer and mention that the super is what\u0027s missing.","commit_id":"5ff3257e5cb26d8db5df2851b32d96c5f7a5fdcd"}],"tempest/thirdparty/boto/test.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"e3a4f8a008e6b30fa02e5c2b6fd6eed1e4fcecad","unresolved":false,"context_lines":[{"line_number":263,"context_line":"            finally:"},{"line_number":264,"context_line":"                del cls._resource_trash_bin[key]"},{"line_number":265,"context_line":"        if fail_count:"},{"line_number":266,"context_line":"            raise exceptions.TearDownException(num\u003dfail_count)"},{"line_number":267,"context_line":"        super(BotoTestCase, cls).tearDownClass()"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"    ec2_error_code \u003d BotoExceptionMatcher()"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2FSlw%3D","line":266,"updated":"2013-08-02 14:04:05.000000000","message":"this means we don\u0027t get to tear down the class if we hit it","commit_id":"6b4980cfc5e2b72efaeee17d5c1ae8c695519e6b"}]}
