)]}'
{"tempest/api/compute/admin/test_aggregates.py":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"908efec681299f165f95041b8f455a479536b430","unresolved":false,"context_lines":[{"line_number":70,"context_line":"        self.client.wait_for_resource_deletion(aggregate[\u0027id\u0027])"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":73,"context_line":"    def test_aggregate_create_delete_with_number_az(self):"},{"line_number":74,"context_line":"        # Create and delete an aggregate when az name is number."},{"line_number":75,"context_line":"        aggregate_name \u003d data_utils.rand_name(self.aggregate_name_prefix)"},{"line_number":76,"context_line":"        az_name \u003d data_utils.rand_int_id(start\u003d1000)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAT3%2F%2F6KY%3D","line":73,"updated":"2013-12-27 11:17:59.000000000","message":"This looks like it is almost identical to test_aggregate_create_delete_wtih_az so perhaps with a little bit of refactoring they could share most of their code?","commit_id":"d38656d585c6450359aaa64267fe2077abaf5ce7"},{"author":{"_account_id":8278,"name":"Dazhao Yu","email":"dazhaoyu@gmail.com","username":"Dazhao"},"change_message_id":"e01024c7d1604b7b3f653dfad54eea03357e8a2e","unresolved":false,"context_lines":[{"line_number":74,"context_line":"    def test_aggregate_create_delete_with_az(self):"},{"line_number":75,"context_line":"        # Create and delete an aggregate."},{"line_number":76,"context_line":"        az_name \u003d data_utils.rand_name(self.az_name_prefix)"},{"line_number":77,"context_line":"        _aggregate_create_delete_with_az(az_name)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":80,"context_line":"    def test_aggregate_create_delete_with_number_az(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAT3%2F%2F2lk%3D","line":77,"updated":"2013-12-30 05:59:25.000000000","message":"change to _aggregate_create_delete_with_az(self, az_name)","commit_id":"92953800b4cf2888c2d308e27c4466c5ace6fae4"},{"author":{"_account_id":8278,"name":"Dazhao Yu","email":"dazhaoyu@gmail.com","username":"Dazhao"},"change_message_id":"e01024c7d1604b7b3f653dfad54eea03357e8a2e","unresolved":false,"context_lines":[{"line_number":80,"context_line":"    def test_aggregate_create_delete_with_number_az(self):"},{"line_number":81,"context_line":"        # Create and delete an aggregate when az name is number."},{"line_number":82,"context_line":"        az_name \u003d data_utils.rand_int_id(start\u003d1000)"},{"line_number":83,"context_line":"        _aggregate_create_delete_with_az(az_name)"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":86,"context_line":"    def test_aggregate_create_verify_entry_in_list(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAT3%2F%2F2lg%3D","line":83,"updated":"2013-12-30 05:59:25.000000000","message":"As above","commit_id":"92953800b4cf2888c2d308e27c4466c5ace6fae4"},{"author":{"_account_id":7138,"name":"David Jia","email":"jiataotj@cn.ibm.com","username":"jiataotj"},"change_message_id":"89362f8c922fce8ba45bb1e5381c690e8620e59d","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        resp, aggregate \u003d self.client.create_aggregate(aggregate_name, az_name)"},{"line_number":49,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":50,"context_line":"        self.assertEqual(aggregate_name, aggregate[\u0027name\u0027])"},{"line_number":51,"context_line":"        if isinstance(az_name, int):"},{"line_number":52,"context_line":"            self.assertEqual(str(az_name), aggregate[\u0027availability_zone\u0027])"},{"line_number":53,"context_line":"        else:"},{"line_number":54,"context_line":"            self.assertEqual(az_name, aggregate[\u0027availability_zone\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAT3%2F%2Fz0c%3D","line":51,"updated":"2013-12-31 03:00:35.000000000","message":"I don\u0027t think we should check whether the az_name is int, since it may be combination of number and string. We should consider to \ntest the case too. Moreover, no matter az name is number, string , or combination, str() can convert them, how about using self.assertEqual(str(az_name), aggregate[\u0027availability_zone\u0027]) to replace the \"if else\" checking?","commit_id":"ee97910eb2b1e5ba448b55b4533644275fa35090"},{"author":{"_account_id":6983,"name":"YangLei","email":"iamhappg@aliyun.com","username":"YangLei"},"change_message_id":"b391b57a9a80357f673cdfe018ff3d4f4f17f1da","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        resp, aggregate \u003d self.client.create_aggregate(aggregate_name, az_name)"},{"line_number":49,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":50,"context_line":"        self.assertEqual(aggregate_name, aggregate[\u0027name\u0027])"},{"line_number":51,"context_line":"        if isinstance(az_name, int):"},{"line_number":52,"context_line":"            self.assertEqual(str(az_name), aggregate[\u0027availability_zone\u0027])"},{"line_number":53,"context_line":"        else:"},{"line_number":54,"context_line":"            self.assertEqual(az_name, aggregate[\u0027availability_zone\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAT3%2F%2Fzu0%3D","line":51,"in_reply_to":"AAAAT3%2F%2Fz0c%3D","updated":"2013-12-31 04:41:58.000000000","message":"David, thank you for your review.\n1. test_aggregate_create_delete_with_az(self) get za_name via rand_name(). It is the combination of number and string as you said. (It is string in fact.)\ndef rand_name(name\u003d\u0027test\u0027):\n    return name + \"-tempest-\" + str(random.randint(1, 0x7fffffff))\n\nWe test the number az_name\nin the new case test_aggregate_create_delete_with_number_az(self).\n\n2. Yes, str() can convert number to string. I think It does not make sense to convert string to string here.","commit_id":"ee97910eb2b1e5ba448b55b4533644275fa35090"},{"author":{"_account_id":5586,"name":"Ivan-Zhu","email":"zhubo198511@gmail.com","username":"ivan-zhu"},"change_message_id":"6a0a81a06ae4e39d8593286794607743088a0c00","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        resp, aggregate \u003d self.client.create_aggregate(aggregate_name, az_name)"},{"line_number":49,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":50,"context_line":"        self.assertEqual(aggregate_name, aggregate[\u0027name\u0027])"},{"line_number":51,"context_line":"        if isinstance(az_name, int):"},{"line_number":52,"context_line":"            self.assertEqual(str(az_name), aggregate[\u0027availability_zone\u0027])"},{"line_number":53,"context_line":"        else:"},{"line_number":54,"context_line":"            self.assertEqual(az_name, aggregate[\u0027availability_zone\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAUH%2F%2F%2Fmw%3D","line":51,"in_reply_to":"AAAAT3%2F%2Fzu0%3D","updated":"2014-01-04 12:06:04.000000000","message":"Since str() can convert both string and number, I think the str() is enough, it makes sense. BTW, can you also make this change in v3 test? Thanks.","commit_id":"ee97910eb2b1e5ba448b55b4533644275fa35090"},{"author":{"_account_id":6983,"name":"YangLei","email":"iamhappg@aliyun.com","username":"YangLei"},"change_message_id":"e47434ecb007dbe81f9a43da8a1d2f85af1af06b","unresolved":false,"context_lines":[{"line_number":48,"context_line":"        resp, aggregate \u003d self.client.create_aggregate(aggregate_name, az_name)"},{"line_number":49,"context_line":"        self.assertEqual(200, resp.status)"},{"line_number":50,"context_line":"        self.assertEqual(aggregate_name, aggregate[\u0027name\u0027])"},{"line_number":51,"context_line":"        if isinstance(az_name, int):"},{"line_number":52,"context_line":"            self.assertEqual(str(az_name), aggregate[\u0027availability_zone\u0027])"},{"line_number":53,"context_line":"        else:"},{"line_number":54,"context_line":"            self.assertEqual(az_name, aggregate[\u0027availability_zone\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAUH%2F%2F%2BIk%3D","line":51,"in_reply_to":"AAAAUH%2F%2F%2Fmw%3D","updated":"2014-01-06 02:10:33.000000000","message":"Ivan-Zhu, Thank you for your review.\n1. I still think we had better do not convert string to string, because there is no need to convert string to string, and it maybe confuse the reviewer to convert string to string.\n2.Yes, I will add this test in v3.","commit_id":"ee97910eb2b1e5ba448b55b4533644275fa35090"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"0595fc1aee5dbf31c97ed2a49f020d71b9be24a8","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        self._aggregate_create_delete_with_az(az_name)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":80,"context_line":"    def test_aggregate_create_delete_with_number_az(self):"},{"line_number":81,"context_line":"        # Create and delete an aggregate when az name is number."},{"line_number":82,"context_line":"        az_name \u003d data_utils.rand_int_id(start\u003d1000)"},{"line_number":83,"context_line":"        self._aggregate_create_delete_with_az(az_name)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2F93Y%3D","line":80,"updated":"2014-01-06 04:49:02.000000000","message":"it\u0027s better to give a more readable name like \"test_aggregate_create_delete_with_numeric_az_name\"","commit_id":"d21fdc25a21953e21689703c51aa83e1e949b478"},{"author":{"_account_id":6983,"name":"YangLei","email":"iamhappg@aliyun.com","username":"YangLei"},"change_message_id":"9b3a67186c6302b2ba0cfeade7610ee3e4e18f1e","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        self._aggregate_create_delete_with_az(az_name)"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":80,"context_line":"    def test_aggregate_create_delete_with_number_az(self):"},{"line_number":81,"context_line":"        # Create and delete an aggregate when az name is number."},{"line_number":82,"context_line":"        az_name \u003d data_utils.rand_int_id(start\u003d1000)"},{"line_number":83,"context_line":"        self._aggregate_create_delete_with_az(az_name)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2F9lc%3D","line":80,"in_reply_to":"AAAAUH%2F%2F93Y%3D","updated":"2014-01-06 06:34:20.000000000","message":"Done","commit_id":"d21fdc25a21953e21689703c51aa83e1e949b478"},{"author":{"_account_id":7139,"name":"Zhi Kun Liu","username":"zhikunliu","inactive":true},"change_message_id":"0595fc1aee5dbf31c97ed2a49f020d71b9be24a8","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":80,"context_line":"    def test_aggregate_create_delete_with_number_az(self):"},{"line_number":81,"context_line":"        # Create and delete an aggregate when az name is number."},{"line_number":82,"context_line":"        az_name \u003d data_utils.rand_int_id(start\u003d1000)"},{"line_number":83,"context_line":"        self._aggregate_create_delete_with_az(az_name)"},{"line_number":84,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2F93U%3D","line":81,"updated":"2014-01-06 04:49:02.000000000","message":"\"# Create and delete an aggregate with a numeric az name\" is better.","commit_id":"d21fdc25a21953e21689703c51aa83e1e949b478"},{"author":{"_account_id":6983,"name":"YangLei","email":"iamhappg@aliyun.com","username":"YangLei"},"change_message_id":"9b3a67186c6302b2ba0cfeade7610ee3e4e18f1e","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    @attr(type\u003d\u0027gate\u0027)"},{"line_number":80,"context_line":"    def test_aggregate_create_delete_with_number_az(self):"},{"line_number":81,"context_line":"        # Create and delete an aggregate when az name is number."},{"line_number":82,"context_line":"        az_name \u003d data_utils.rand_int_id(start\u003d1000)"},{"line_number":83,"context_line":"        self._aggregate_create_delete_with_az(az_name)"},{"line_number":84,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2F9lY%3D","line":81,"in_reply_to":"AAAAUH%2F%2F93U%3D","updated":"2014-01-06 06:34:20.000000000","message":"Done","commit_id":"d21fdc25a21953e21689703c51aa83e1e949b478"}]}
