From bfaa8e05834d4d3c78069af22387427c12e0e496 Mon Sep 17 00:00:00 2001 From: Clay Gerrard Date: Wed, 21 Sep 2016 17:33:30 -0700 Subject: [PATCH] Fix ChunkWriteError when running unittests I don't think this is a real bug - just that the mocked iter wasn't closing it subiters like the real iter does. Change-Id: I44c8159f9eea8737bc86b6c7eb59a512e57e86c1 --- test/unit/proxy/test_server.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/test/unit/proxy/test_server.py b/test/unit/proxy/test_server.py index 9e1a4b0213..6f5a7bba69 100644 --- a/test/unit/proxy/test_server.py +++ b/test/unit/proxy/test_server.py @@ -2438,10 +2438,14 @@ class TestObjectController(unittest.TestCase): raise Exception("doom ba doom") def explodey_doc_parts_iter(inner_iter_iter): - for item in inner_iter_iter: - item = item.copy() # paranoia about mutable data - item['part_iter'] = explodey_iter(item['part_iter']) - yield item + try: + for item in inner_iter_iter: + item = item.copy() # paranoia about mutable data + item['part_iter'] = explodey_iter(item['part_iter']) + yield item + except GeneratorExit: + inner_iter_iter.close() + raise real_ec_app_iter = swift.proxy.controllers.obj.ECAppIter