)]}'
{"test/unit/proxy/test_server.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"4458132a9ad6cb8698b7ccc3f5aa2200f3887f82","unresolved":false,"context_lines":[{"line_number":3978,"context_line":"                         headers\u003dNone, query_string\u003dNone):"},{"line_number":3979,"context_line":"            if method \u003d\u003d \"HEAD\" and path \u003d\u003d \u0027/a/c/o.jpg\u0027:"},{"line_number":3980,"context_line":"                if POLICY_INDEX in headers:"},{"line_number":3981,"context_line":"                    given_headers.update(req.headers)"},{"line_number":3982,"context_line":""},{"line_number":3983,"context_line":"        def fake_container_info(account, container, req):"},{"line_number":3984,"context_line":"            return {\u0027status\u0027: 200, \u0027sync_key\u0027: None, \u0027storage_policy\u0027: \u00271\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F%2BlJQ%3D","line":3981,"updated":"2014-03-25 19:08:35.000000000","message":"I think this test would be easier to reason about if you captured everything in test_connect and performed the filtering closer to the assertions.","commit_id":"ce6235737a0ca3c3766a8ea838c5ac27d75648c1"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"4458132a9ad6cb8698b7ccc3f5aa2200f3887f82","unresolved":false,"context_lines":[{"line_number":4000,"context_line":""},{"line_number":4001,"context_line":"            controller.container_info \u003d fake_container_info"},{"line_number":4002,"context_line":"            set_http_connect(200, 200, 200, 503, 503, 503,"},{"line_number":4003,"context_line":"                             give_connect\u003dtest_connect)"},{"line_number":4004,"context_line":"            req \u003d Request.blank(\u0027/v1/a/c/o.jpg\u0027)"},{"line_number":4005,"context_line":"            req.content_length \u003d 0"},{"line_number":4006,"context_line":"            self.app.update_request(req)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F%2BlJI%3D","line":4003,"updated":"2014-03-25 19:08:35.000000000","message":"I think this would be a stronger if it setup a successful request.","commit_id":"ce6235737a0ca3c3766a8ea838c5ac27d75648c1"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"4458132a9ad6cb8698b7ccc3f5aa2200f3887f82","unresolved":false,"context_lines":[{"line_number":4005,"context_line":"            req.content_length \u003d 0"},{"line_number":4006,"context_line":"            self.app.update_request(req)"},{"line_number":4007,"context_line":"            self.app.memcache.store \u003d {}"},{"line_number":4008,"context_line":"            res \u003d controller.PUT(req)"},{"line_number":4009,"context_line":"            self.assertEquals(\u00271\u0027, given_headers[POLICY_INDEX])"},{"line_number":4010,"context_line":"            self.assertEquals(503, res.status_int)"},{"line_number":4011,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F%2BlFg%3D","line":4008,"updated":"2014-03-25 19:08:35.000000000","message":"Stronger test if you pass method\u003d\u0027PUT\u0027 into Request.blank and call \"res \u003d req.get_response(self.app)\" to exercise request routing and exception handling.\n\nSome weird behavior and test maintenance overhead can pop up when you hand a GET request to the PUT method (sometimes you also see folks sneak in an invalid path).","commit_id":"ce6235737a0ca3c3766a8ea838c5ac27d75648c1"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"4458132a9ad6cb8698b7ccc3f5aa2200f3887f82","unresolved":false,"context_lines":[{"line_number":4006,"context_line":"            self.app.update_request(req)"},{"line_number":4007,"context_line":"            self.app.memcache.store \u003d {}"},{"line_number":4008,"context_line":"            res \u003d controller.PUT(req)"},{"line_number":4009,"context_line":"            self.assertEquals(\u00271\u0027, given_headers[POLICY_INDEX])"},{"line_number":4010,"context_line":"            self.assertEquals(503, res.status_int)"},{"line_number":4011,"context_line":""},{"line_number":4012,"context_line":"    @unpatch_policies"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAWH%2F%2BlIA%3D","line":4009,"updated":"2014-03-25 19:08:35.000000000","message":"When I remove the fix in the proxy this gives me a KeyError instead of a test failure.  On the earlier point it\u0027s not clear without careful evaluation of the filtering in test_connect that these are the headers of the HEAD request instead of the backend PUT\u0027s.  If you somehow show in a few asserts \"of the requests that we captured, the third one was a HEAD, and the headers sent included x-storage-policy-index, and it\u0027s value was 1\" - that\u0027s be pretty close to perfect I think.","commit_id":"ce6235737a0ca3c3766a8ea838c5ac27d75648c1"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"209fd72f19123beb3e2ae90e1b941b8ad1d52b2b","unresolved":false,"context_lines":[{"line_number":3977,"context_line":"                         headers\u003dNone, query_string\u003dNone):"},{"line_number":3978,"context_line":"            if method \u003d\u003d \"HEAD\":"},{"line_number":3979,"context_line":"                self.assertEquals(path, \u0027/a/c/o.jpg\u0027)"},{"line_number":3980,"context_line":"                self.assertEquals(1, int(req.headers[POLICY_INDEX]))"},{"line_number":3981,"context_line":""},{"line_number":3982,"context_line":"        def fake_container_info(account, container, req):"},{"line_number":3983,"context_line":"            return {\u0027status\u0027: 200, \u0027sync_key\u0027: None, \u0027storage_policy\u0027: \u00271\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAWH%2F9PJw%3D","line":3980,"updated":"2014-04-07 18:47:01.000000000","message":"this should say just \"headers\" not \"req.headers\".  Also this test should fail on w/o the change in proxy.controller.obj","commit_id":"2aab24a5bf50eaafab5ee29a6b5eb77cc6a76794"}]}
