)]}'
{"test/unit/obj/test_expirer.py":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"3b978f413b9261813d8c71ace68978dc878188bf","unresolved":false,"context_lines":[{"line_number":241,"context_line":"        self.assertEqual(aco_dict[\u0027.expiring_objects\u0027][\u00273\u0027].pop(),"},{"line_number":242,"context_line":"                         deleted_objects[\u00273\u0027].pop().decode(\u0027utf8\u0027))"},{"line_number":243,"context_line":"        self.assertEqual(aco_dict[\u0027.expiring_objects\u0027], deleted_objects)"},{"line_number":244,"context_line":"        self.assertEqual(len(set(x.obj_containers_in_order[:4])), 4)"},{"line_number":245,"context_line":""},{"line_number":246,"context_line":"    def test_delete_object(self):"},{"line_number":247,"context_line":"        x \u003d expirer.ObjectExpirer({}, logger\u003dself.logger)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa0c359_7e981f74","side":"PARENT","line":244,"updated":"2018-02-21 05:51:17.000000000","message":"One upside of the current test is that it *tries* to involve some lumpy data (even if it kinda fails by putting everything in the same cache-key bucket), while the new test from https://review.openstack.org/#/c/538171/ has three task containers each with exactly two tasks, both of which use the same cache key.\n\nMaybe we should add some more noise to that test? Have some objects from one target container smeared across several task containers, have more tasks in some containers than other, have more deletes for some containers than others....","commit_id":"94590363a10b854788569a806422f3fda7dc80d1"},{"author":{"_account_id":4608,"name":"Kota Tsuyuzaki","email":"bloodeagle40234@gmail.com","username":"tsuyuzaki-kota"},"change_message_id":"5e1a112349b112d3684d1d2099d92a7fc9c1e051","unresolved":false,"context_lines":[{"line_number":238,"context_line":"            x.run_once()"},{"line_number":239,"context_line":"            self.assertNotEqual(deleted_objects, x.deleted_objects)"},{"line_number":240,"context_line":"            deleted_objects \u003d deepcopy(x.deleted_objects)"},{"line_number":241,"context_line":"        self.assertEqual(aco_dict[\u0027.expiring_objects\u0027][\u00273\u0027].pop(),"},{"line_number":242,"context_line":"                         deleted_objects[\u00273\u0027].pop().decode(\u0027utf8\u0027))"},{"line_number":243,"context_line":"        self.assertEqual(aco_dict[\u0027.expiring_objects\u0027], deleted_objects)"},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"    def test_delete_object(self):"},{"line_number":246,"context_line":"        x \u003d expirer.ObjectExpirer({}, logger\u003dself.logger)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa0c359_fa6dbb31","line":243,"range":{"start_line":241,"start_character":0,"end_line":243,"end_character":72},"updated":"2018-02-26 10:31:36.000000000","message":"Thinking of confusion, those tests are also confusing because the assertions should be just a sanity (not related to process level concurrency directly). But that is no broker to me so add my +2 on this.","commit_id":"58f5d89066adbd54403ad315ffe1f9b2f05aa583"}]}
