)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"f4309f35c960adf53e0d98555b03b2d185d08d99","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     zhangbailin \u003czhangbailin@inspur.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2019-10-15 09:53:02 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add minor version [21] to test_versions"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Closes-Bug: #1848110"},{"line_number":10,"context_line":"Change-Id: Ib1ad244bb059bb86a9f3025d4bc16c20946433d0"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3fa7e38b_aeab86d3","line":7,"updated":"2019-10-15 14:01:31.000000000","message":"I\u0027d like to see a little more detail to the commit message.  This is a great summary line, but follow it with a short paragraph explaining the bug and how this change corrects it.","commit_id":"0f34065b1233f02cba8b3cb23ca7e1d1c80d21b7"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"6abe0e8b351fd85fc5c80fdb873344952b2d714f","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     zhangbailin \u003czhangbailin@inspur.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2019-10-15 09:53:02 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add minor version [21] to test_versions"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Closes-Bug: #1848110"},{"line_number":10,"context_line":"Change-Id: Ib1ad244bb059bb86a9f3025d4bc16c20946433d0"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3fa7e38b_6759258c","line":7,"in_reply_to":"3fa7e38b_aeab86d3","updated":"2019-10-16 07:47:53.000000000","message":"Done","commit_id":"0f34065b1233f02cba8b3cb23ca7e1d1c80d21b7"}],"novaclient/tests/unit/v2/test_shell.py":[{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"bd5d91572ca9a8e92d9631ac1837ae687e5bdf47","unresolved":false,"context_lines":[{"line_number":4366,"context_line":""},{"line_number":4367,"context_line":"        versions_covered \u003d set()"},{"line_number":4368,"context_line":"        for key, values in api_versions._SUBSTITUTIONS.items():"},{"line_number":4369,"context_line":"            for value in values:"},{"line_number":4370,"context_line":"                if value.start_version.ver_major \u003d\u003d 2:"},{"line_number":4371,"context_line":"                    versions_covered.add(value.start_version.ver_minor)"},{"line_number":4372,"context_line":""},{"line_number":4373,"context_line":"        versions_not_covered \u003d versions_supported - versions_covered"},{"line_number":4374,"context_line":"        unaccounted_for \u003d versions_not_covered - exclusions"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_bafaae40","line":4371,"range":{"start_line":4369,"start_character":0,"end_line":4371,"end_character":71},"updated":"2019-10-18 06:25:52.000000000","message":"In order to exclude version-wrapped methods in tests, it should be as follows:\n\n            # Exclude version-wrapped methods in tests\n            if \u0027novaclient.tests\u0027 not in key:\n                for value in values:\n                    if value.start_version.ver_major \u003d\u003d 2:\n                        versions_covered.add(value.start_version.ver_minor)","commit_id":"1eedb3edcf6d096bf711aae2e24b7dac889c0017"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"c0555b10a6a990c1b93b3e6294218620ff019524","unresolved":false,"context_lines":[{"line_number":4366,"context_line":""},{"line_number":4367,"context_line":"        versions_covered \u003d set()"},{"line_number":4368,"context_line":"        for key, values in api_versions._SUBSTITUTIONS.items():"},{"line_number":4369,"context_line":"            for value in values:"},{"line_number":4370,"context_line":"                if value.start_version.ver_major \u003d\u003d 2:"},{"line_number":4371,"context_line":"                    versions_covered.add(value.start_version.ver_minor)"},{"line_number":4372,"context_line":""},{"line_number":4373,"context_line":"        versions_not_covered \u003d versions_supported - versions_covered"},{"line_number":4374,"context_line":"        unaccounted_for \u003d versions_not_covered - exclusions"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_f1e6f64a","line":4371,"range":{"start_line":4369,"start_character":0,"end_line":4371,"end_character":71},"in_reply_to":"3fa7e38b_bafaae40","updated":"2019-10-21 01:03:35.000000000","message":"If the api_versions._SUBSTITUTIONS.items()\u0027s key contains the \u0027novaclient.tests\u0027, it will be also raised the same exception, so I am not sure this change is ok.","commit_id":"1eedb3edcf6d096bf711aae2e24b7dac889c0017"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"966d0479fc711768748e15b2e5b12ffe982e83d5","unresolved":false,"context_lines":[{"line_number":4366,"context_line":""},{"line_number":4367,"context_line":"        versions_covered \u003d set()"},{"line_number":4368,"context_line":"        for key, values in api_versions._SUBSTITUTIONS.items():"},{"line_number":4369,"context_line":"            for value in values:"},{"line_number":4370,"context_line":"                if value.start_version.ver_major \u003d\u003d 2:"},{"line_number":4371,"context_line":"                    versions_covered.add(value.start_version.ver_minor)"},{"line_number":4372,"context_line":""},{"line_number":4373,"context_line":"        versions_not_covered \u003d versions_supported - versions_covered"},{"line_number":4374,"context_line":"        unaccounted_for \u003d versions_not_covered - exclusions"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_b1c95ead","line":4371,"range":{"start_line":4369,"start_character":0,"end_line":4371,"end_character":71},"in_reply_to":"3fa7e38b_f1e6f64a","updated":"2019-10-21 01:07:41.000000000","message":"And base on you suggestion, I test in my local env, the result as follows:\n\n[root@localhost python-novaclient]# python -m testtools.run novaclient.tests.unit.v2.test_shell.ShellTest.test_versions\nTests running...\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nFAIL: novaclient.tests.unit.v2.test_shell.ShellTest.test_versions\n----------------------------------------------------------------------\nTraceback (most recent call last):\n  File \"novaclient/tests/unit/v2/test_shell.py\", line 4477, in test_versions\n    self.assertEqual(set([]), unaccounted_for, failure_msg)\n  File \"/usr/lib/python2.7/site-packages/testtools/testcase.py\", line 411, in assertEqual\n    self.assertThat(observed, matcher, message)\n  File \"/usr/lib/python2.7/site-packages/testtools/testcase.py\", line 498, in assertThat\n    raise mismatch_error\ntesttools.matchers._impl.MismatchError: set([]) !\u003d set([21]): Minor versions [21] have been skipped.  Please do not raise API_MAX_VERSION without adding support or excluding them.\n\nRan 1 test in 0.005s\nFAILED (failures\u003d1)","commit_id":"1eedb3edcf6d096bf711aae2e24b7dac889c0017"}]}
