)]}'
{"test/unit/common/ring/test_ring.py":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"8d9e4b208840b016fd09c4a244621a3e8f7711da","unresolved":false,"context_lines":[{"line_number":856,"context_line":"        rb.get_ring().save(self.testgz)"},{"line_number":857,"context_line":"        r \u003d ring.Ring(self.testdir, ring_name\u003d\u0027whatever\u0027)"},{"line_number":858,"context_line":""},{"line_number":859,"context_line":"        class CountingRingTable(object):"},{"line_number":860,"context_line":""},{"line_number":861,"context_line":"            def __init__(self, table):"},{"line_number":862,"context_line":"                self.table \u003d table"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a5de9d1_1f78eac3","line":859,"updated":"2016-01-28 11:06:53.000000000","message":"It feels like mock ought to provide a utility for wrapping an object, recording and forwarding all calls to the wrapped object. What would the pattern be - a facade, or proxy? I have looked for it before but never found how mock could do that. NM.","commit_id":"165fa1fd40b5e4b13cf5188712593e2275bef821"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"8d9e4b208840b016fd09c4a244621a3e8f7711da","unresolved":false,"context_lines":[{"line_number":882,"context_line":"        part \u003d random.randint(0, r.partition_count)"},{"line_number":883,"context_line":"        node_iter \u003d r.get_more_nodes(part)"},{"line_number":884,"context_line":"        next(node_iter)"},{"line_number":885,"context_line":"        self.assertEqual(5, counting_table.count)"},{"line_number":886,"context_line":"        # sanity"},{"line_number":887,"context_line":"        self.assertEqual(1, r._num_regions)"},{"line_number":888,"context_line":"        self.assertEqual(2, r._num_zones)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a5de9d1_e97434fe","line":885,"updated":"2016-01-28 11:06:53.000000000","message":"ok. 3 calls in get_part_nodes plus one for the StopIteration, plus one to find first output of get_more_nodes -\u003e 5 in total\n\nCompared to 3065 before Sam\u0027s patch. Cool.","commit_id":"165fa1fd40b5e4b13cf5188712593e2275bef821"}]}
