)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"5c0478f00f90b26d9382050bbdfcf291f1b7e8df","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"7d2b343a_67d40838","updated":"2023-02-09 23:51:11.000000000","message":"I like that it\u0027s just test updates and they all pass, plus I like re-using FakeSwift instead of something custom/janky.","commit_id":"f046e910d6ab95941a25ab6b115adeeeb1cc0591"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"a0fbad1cb734ae0997259de677255c88c6f3aa84","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"e1124919_e34d533b","updated":"2023-02-10 06:20:00.000000000","message":"Yeah, love the idea of using the unit test global FakeSwift and FakeApp! Nice.\n\nI think you missed a line","commit_id":"f046e910d6ab95941a25ab6b115adeeeb1cc0591"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"56690416d4f4089ecea281162a5d5d2d4212c293","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"17bf75cb_3a4e7400","updated":"2023-02-15 15:41:02.000000000","message":"pretty sure this is better than was there before\n\nI would like to see us follow through on the weird copy test tho:\nhttps://review.opendev.org/c/openstack/swift/+/873940/1 ","commit_id":"5f4a96cf505310cef1b93ea2e79ba7baec4eed9f"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"9759be32efcf0fc03ff8752bde2165a713b4ea8b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"48371bfa_2d25c3dd","updated":"2023-02-27 01:07:12.000000000","message":"Yup makes sense, and I love that we\u0027re stating to use a more global FakeSwift, so that\u0027s also a big win.\n\nAnd yeah that test you removed doesn\u0027t even look like it tests account quotas so cool.","commit_id":"e76d443e00ae5f504bac4f109317fc489b5f1bc5"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"6778a27f24b14e59a45f438592b3ddeee89ffd38","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"62342b55_0a9bbd31","updated":"2023-02-27 17:05:38.000000000","message":"recheck\n\n No package matching \u0027gettext\u0027 is available\n\nis a new one for me...","commit_id":"e76d443e00ae5f504bac4f109317fc489b5f1bc5"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"23f592c568ad1083b35650e2e01beaf8e06ae3fc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"70c96557_7d3ab8c7","updated":"2023-02-28 17:50:15.000000000","message":"recheck\n\nI think the outage yesterday caused the previous recheck to be ignored.","commit_id":"e76d443e00ae5f504bac4f109317fc489b5f1bc5"}],"test/unit/common/middleware/test_account_quotas.py":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"9b227b0bbaa0d3a56f0880fd3173d58098c65b13","unresolved":true,"context_lines":[{"line_number":405,"context_line":"                            environ\u003d{\u0027REQUEST_METHOD\u0027: \u0027PUT\u0027,"},{"line_number":406,"context_line":"                                     \u0027swift.cache\u0027: cache})"},{"line_number":407,"context_line":"        res \u003d req.get_response(app)"},{"line_number":408,"context_line":"        self.assertEqual(res.status_int, 503)"},{"line_number":409,"context_line":""},{"line_number":410,"context_line":""},{"line_number":411,"context_line":"class AccountQuotaCopyingTestCases(unittest.TestCase):"}],"source_content_type":"text/x-python","patch_set":1,"id":"210915ff_55c74bcd","line":408,"updated":"2022-10-15 00:11:50.000000000","message":"Just trying to make it a little more obvious that this is going to pass through.","commit_id":"f046e910d6ab95941a25ab6b115adeeeb1cc0591"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"5c0478f00f90b26d9382050bbdfcf291f1b7e8df","unresolved":true,"context_lines":[{"line_number":405,"context_line":"                            environ\u003d{\u0027REQUEST_METHOD\u0027: \u0027PUT\u0027,"},{"line_number":406,"context_line":"                                     \u0027swift.cache\u0027: cache})"},{"line_number":407,"context_line":"        res \u003d req.get_response(app)"},{"line_number":408,"context_line":"        self.assertEqual(res.status_int, 503)"},{"line_number":409,"context_line":""},{"line_number":410,"context_line":""},{"line_number":411,"context_line":"class AccountQuotaCopyingTestCases(unittest.TestCase):"}],"source_content_type":"text/x-python","patch_set":1,"id":"137dfc49_41ba2a8e","line":408,"in_reply_to":"210915ff_55c74bcd","updated":"2023-02-09 23:51:11.000000000","message":"that the /v1 path goes straight to the app 👍","commit_id":"f046e910d6ab95941a25ab6b115adeeeb1cc0591"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"9b227b0bbaa0d3a56f0880fd3173d58098c65b13","unresolved":true,"context_lines":[{"line_number":477,"context_line":"                                     \u0027swift.cache\u0027: cache},"},{"line_number":478,"context_line":"                            headers\u003d{\u0027x-copy-from\u0027: \u0027/c2/o3\u0027})"},{"line_number":479,"context_line":"        res \u003d req.get_response(self.copy_filter)"},{"line_number":480,"context_line":"        self.assertEqual(res.status_int, 413)"},{"line_number":481,"context_line":"        # *but*, that\u0027s coming out of copy -- quota never even sees the PUT"},{"line_number":482,"context_line":""},{"line_number":483,"context_line":"    def test_quota_copy_from_bad_src(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"e5ddf140_0f9e4175","line":480,"updated":"2022-10-15 00:11:50.000000000","message":"Yeah, this had to change -- I\u0027m really not clear what we were trying to test here before, but I don\u0027t think it had any basis in reality.","commit_id":"f046e910d6ab95941a25ab6b115adeeeb1cc0591"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"5c0478f00f90b26d9382050bbdfcf291f1b7e8df","unresolved":true,"context_lines":[{"line_number":478,"context_line":"                            headers\u003d{\u0027x-copy-from\u0027: \u0027/c2/o3\u0027})"},{"line_number":479,"context_line":"        res \u003d req.get_response(self.copy_filter)"},{"line_number":480,"context_line":"        self.assertEqual(res.status_int, 413)"},{"line_number":481,"context_line":"        # *but*, that\u0027s coming out of copy -- quota never even sees the PUT"},{"line_number":482,"context_line":""},{"line_number":483,"context_line":"    def test_quota_copy_from_bad_src(self):"},{"line_number":484,"context_line":"        self.headers[:] \u003d [(\u0027x-account-bytes-used\u0027, \u00270\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"378d917e_838a0a34","line":481,"updated":"2023-02-09 23:51:11.000000000","message":"the test is \"test_quota_copy_from ... no_src\"\n\nbut this test *does* have an x-copy-from src, and a register call to make the GET work - why does the PUT fail with \"payload too large\" if quota \u0027never seen sees the PUT\"","commit_id":"f046e910d6ab95941a25ab6b115adeeeb1cc0591"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"5d4e37cda10625c102dd8b1b04ed9314d4ef174f","unresolved":true,"context_lines":[{"line_number":478,"context_line":"                            headers\u003d{\u0027x-copy-from\u0027: \u0027/c2/o3\u0027})"},{"line_number":479,"context_line":"        res \u003d req.get_response(self.copy_filter)"},{"line_number":480,"context_line":"        self.assertEqual(res.status_int, 413)"},{"line_number":481,"context_line":"        # *but*, that\u0027s coming out of copy -- quota never even sees the PUT"},{"line_number":482,"context_line":""},{"line_number":483,"context_line":"    def test_quota_copy_from_bad_src(self):"},{"line_number":484,"context_line":"        self.headers[:] \u003d [(\u0027x-account-bytes-used\u0027, \u00270\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"acede064_0c02f53c","line":481,"in_reply_to":"378d917e_838a0a34","updated":"2023-02-10 05:36:01.000000000","message":"The *old* behavior was terrible, too -- looking at FakeApp, you want to think there\u0027s a 404, but there *isn\u0027t*! `copy` doesn\u0027t issue a HEAD, only a GET, so there was a zero-byte 200 -- i.e. there *was* a src.\n\nIf we *did* issue a 404... we would no longer be testing the quota middleware, only copy! I\u0027m not opposed to renaming the test, but at least it\u0027s (1) testing account quotas and (2) hitting an otherwise not-covered path.","commit_id":"f046e910d6ab95941a25ab6b115adeeeb1cc0591"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"5a79e2be6885edf20a6ab1fa04ae97c71fd75842","unresolved":true,"context_lines":[{"line_number":478,"context_line":"                            headers\u003d{\u0027x-copy-from\u0027: \u0027/c2/o3\u0027})"},{"line_number":479,"context_line":"        res \u003d req.get_response(self.copy_filter)"},{"line_number":480,"context_line":"        self.assertEqual(res.status_int, 413)"},{"line_number":481,"context_line":"        # *but*, that\u0027s coming out of copy -- quota never even sees the PUT"},{"line_number":482,"context_line":""},{"line_number":483,"context_line":"    def test_quota_copy_from_bad_src(self):"},{"line_number":484,"context_line":"        self.headers[:] \u003d [(\u0027x-account-bytes-used\u0027, \u00270\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"02ba595b_5b1ecaf4","line":481,"in_reply_to":"acede064_0c02f53c","updated":"2023-02-17 18:09:57.000000000","message":"Alright, I\u0027m coming around on just ripping out this test -- like I said, quotas never even sees a PUT, and we\u0027ve already got this covered by test_copy (though the test is also misnamed): https://github.com/openstack/swift/blob/2.31.0/test/unit/common/middleware/test_copy.py#L1041-L1050","commit_id":"f046e910d6ab95941a25ab6b115adeeeb1cc0591"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"a0fbad1cb734ae0997259de677255c88c6f3aa84","unresolved":true,"context_lines":[{"line_number":493,"context_line":""},{"line_number":494,"context_line":"        self.headers[:] \u003d [(\u0027x-account-bytes-used\u0027, \u00271000\u0027),"},{"line_number":495,"context_line":"                           (\u0027x-account-meta-quota-bytes\u0027, \u00270\u0027)]"},{"line_number":496,"context_line":"        self.assertEqual(res.status_int, 412)"},{"line_number":497,"context_line":""},{"line_number":498,"context_line":""},{"line_number":499,"context_line":"if __name__ \u003d\u003d \u0027__main__\u0027:"}],"source_content_type":"text/x-python","patch_set":1,"id":"14b9b94c_43f73ceb","line":496,"updated":"2023-02-10 06:20:00.000000000","message":"Are we missing a:\n\n  res \u003d req.get_response(self.copy_filter)\n  \nOR something here?","commit_id":"f046e910d6ab95941a25ab6b115adeeeb1cc0591"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"85be716bf121d4c18712908216c8bb8e0652c652","unresolved":false,"context_lines":[{"line_number":493,"context_line":""},{"line_number":494,"context_line":"        self.headers[:] \u003d [(\u0027x-account-bytes-used\u0027, \u00271000\u0027),"},{"line_number":495,"context_line":"                           (\u0027x-account-meta-quota-bytes\u0027, \u00270\u0027)]"},{"line_number":496,"context_line":"        self.assertEqual(res.status_int, 412)"},{"line_number":497,"context_line":""},{"line_number":498,"context_line":""},{"line_number":499,"context_line":"if __name__ \u003d\u003d \u0027__main__\u0027:"}],"source_content_type":"text/x-python","patch_set":1,"id":"80837906_fb474d6f","line":496,"in_reply_to":"14b9b94c_43f73ceb","updated":"2023-02-14 20:14:58.000000000","message":"Good catch! Done.","commit_id":"f046e910d6ab95941a25ab6b115adeeeb1cc0591"}]}
