)]}'
{"test/unit/obj/test_diskfile.py":[{"author":{"_account_id":18603,"name":"Béla Vancsics","email":"vancsics@inf.u-szeged.hu","username":"vancsics"},"change_message_id":"f461342f7b2caffba3837ce514d0b525d0d83b17","unresolved":false,"context_lines":[{"line_number":4694,"context_line":"            self.assertTrue(df._use_linkat)"},{"line_number":4695,"context_line":"            log \u003d df._logger.get_lines_for_level(\u0027warning\u0027)"},{"line_number":4696,"context_line":"            self.assertGreater(len(log), 0)"},{"line_number":4697,"context_line":"            self.assertTrue(\u0027O_TMPFILE\u0027 in log[-1])"},{"line_number":4698,"context_line":""},{"line_number":4699,"context_line":"    @requires_o_tmpfile_support"},{"line_number":4700,"context_line":"    def test_get_tmpfile_os_open_other_exceptions_are_raised(self):"}],"source_content_type":"text/x-python","patch_set":15,"id":"1a1ced50_5a2a1c91","line":4697,"range":{"start_line":4697,"start_character":12,"end_line":4697,"end_character":51},"updated":"2017-03-22 15:24:54.000000000","message":"self.assertTrue() -\u003e self.assertIn()","commit_id":"5e69554ba7c245d2bf3094c34871748cd59ae530"},{"author":{"_account_id":18603,"name":"Béla Vancsics","email":"vancsics@inf.u-szeged.hu","username":"vancsics"},"change_message_id":"627968b171e45054e1103fa00c76910066b9b092","unresolved":false,"context_lines":[{"line_number":6336,"context_line":"            with open(hashes_file) as f:"},{"line_number":6337,"context_line":"                found_hashes \u003d pickle.load(f)"},{"line_number":6338,"context_line":"                found_hashes.pop(\u0027updated\u0027)"},{"line_number":6339,"context_line":"                self.assertEqual(False, found_hashes.pop(\u0027valid\u0027))"},{"line_number":6340,"context_line":"            # verify subsequent call to get_hashes reaches correct outcome"},{"line_number":6341,"context_line":"            hashes \u003d df_mgr.get_hashes(\u0027sda1\u0027, \u00270\u0027, [], policy)"},{"line_number":6342,"context_line":"            self.assertIn(suffix, hashes)"}],"source_content_type":"text/x-python","patch_set":17,"id":"5f201791_451eff0c","line":6339,"range":{"start_line":6339,"start_character":16,"end_line":6339,"end_character":66},"updated":"2017-06-21 07:57:16.000000000","message":"self.assertFalse(found_hashes.pop(\u0027valid\u0027))","commit_id":"e255b38c0d028c5e47ff6b9a18d088d202a67b99"}],"test/unit/obj/test_reconstructor.py":[{"author":{"_account_id":18603,"name":"Béla Vancsics","email":"vancsics@inf.u-szeged.hu","username":"vancsics"},"change_message_id":"f461342f7b2caffba3837ce514d0b525d0d83b17","unresolved":false,"context_lines":[{"line_number":3457,"context_line":"                                 md5(broken_body).hexdigest())"},{"line_number":3458,"context_line":"                for called_header in called_headers:"},{"line_number":3459,"context_line":"                    called_header \u003d HeaderKeyDict(called_header)"},{"line_number":3460,"context_line":"                    self.assertTrue(\u0027Content-Length\u0027 in called_header)"},{"line_number":3461,"context_line":"                    self.assertEqual(called_header[\u0027Content-Length\u0027], \u00270\u0027)"},{"line_number":3462,"context_line":"                    self.assertTrue(\u0027User-Agent\u0027 in called_header)"},{"line_number":3463,"context_line":"                    user_agent \u003d called_header[\u0027User-Agent\u0027]"}],"source_content_type":"text/x-python","patch_set":15,"id":"1a1ced50_9a8e542c","line":3460,"range":{"start_line":3460,"start_character":20,"end_line":3460,"end_character":70},"updated":"2017-03-22 15:24:54.000000000","message":"self.assertTrue() -\u003e self.assertIn()","commit_id":"5e69554ba7c245d2bf3094c34871748cd59ae530"},{"author":{"_account_id":18603,"name":"Béla Vancsics","email":"vancsics@inf.u-szeged.hu","username":"vancsics"},"change_message_id":"f461342f7b2caffba3837ce514d0b525d0d83b17","unresolved":false,"context_lines":[{"line_number":3459,"context_line":"                    called_header \u003d HeaderKeyDict(called_header)"},{"line_number":3460,"context_line":"                    self.assertTrue(\u0027Content-Length\u0027 in called_header)"},{"line_number":3461,"context_line":"                    self.assertEqual(called_header[\u0027Content-Length\u0027], \u00270\u0027)"},{"line_number":3462,"context_line":"                    self.assertTrue(\u0027User-Agent\u0027 in called_header)"},{"line_number":3463,"context_line":"                    user_agent \u003d called_header[\u0027User-Agent\u0027]"},{"line_number":3464,"context_line":"                    self.assertTrue(user_agent.startswith(\u0027obj-reconstructor\u0027))"},{"line_number":3465,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"1a1ced50_5a713c43","line":3462,"range":{"start_line":3462,"start_character":20,"end_line":3462,"end_character":66},"updated":"2017-03-22 15:24:54.000000000","message":"Ditto","commit_id":"5e69554ba7c245d2bf3094c34871748cd59ae530"}],"test/unit/obj/test_server.py":[{"author":{"_account_id":14766,"name":"Kazuhiro MIYAHARA","email":"miyahara.kazuhiro@lab.ntt.co.jp","username":"miyahara"},"change_message_id":"77dff3a5e567f4285e825aaabea8bfe52617d3b0","unresolved":false,"context_lines":[{"line_number":160,"context_line":"                self.assertEqual(resp.body, out_body)"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"    def test_REQUEST_SPECIAL_CHARS(self):"},{"line_number":163,"context_line":"        obj \u003d \u0027special?%20/%\u0027"},{"line_number":164,"context_line":"        self.check_all_api_methods(obj)"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"    def test_device_unavailable(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a71b18c_2aa2abfd","line":163,"range":{"start_line":163,"start_character":22,"end_line":163,"end_character":23},"updated":"2016-12-05 01:37:36.000000000","message":"Why is this string changed?\nIs this change necessary for \"more specific asserts\"?","commit_id":"fb3021d50a1d338b7bd2a9e1233e592b1ffb37ac"},{"author":{"_account_id":18602,"name":"Gábor Antal","email":"antal@inf.u-szeged.hu","username":"antal"},"change_message_id":"65ba21569e45b8d26a82471f0f522885b20113a0","unresolved":false,"context_lines":[{"line_number":160,"context_line":"                self.assertEqual(resp.body, out_body)"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"    def test_REQUEST_SPECIAL_CHARS(self):"},{"line_number":163,"context_line":"        obj \u003d \u0027special?%20/%\u0027"},{"line_number":164,"context_line":"        self.check_all_api_methods(obj)"},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"    def test_device_unavailable(self):"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a71b18c_114b492b","line":163,"range":{"start_line":163,"start_character":22,"end_line":163,"end_character":23},"in_reply_to":"3a71b18c_2aa2abfd","updated":"2016-12-05 14:58:47.000000000","message":"Done","commit_id":"fb3021d50a1d338b7bd2a9e1233e592b1ffb37ac"},{"author":{"_account_id":14766,"name":"Kazuhiro MIYAHARA","email":"miyahara.kazuhiro@lab.ntt.co.jp","username":"miyahara"},"change_message_id":"77dff3a5e567f4285e825aaabea8bfe52617d3b0","unresolved":false,"context_lines":[{"line_number":2636,"context_line":"        self.assertEqual(200, resp.status_int)"},{"line_number":2637,"context_line":"        for verb in \u0027OPTIONS GET POST PUT DELETE HEAD REPLICATE \\"},{"line_number":2638,"context_line":"                SSYNC\u0027.split():"},{"line_number":2639,"context_line":"            self.assertTrue(verb, resp.headers[\u0027Allow\u0027].split(\u0027, \u0027))"},{"line_number":2640,"context_line":"        self.assertEqual(len(resp.headers[\u0027Allow\u0027].split(\u0027, \u0027)), 8)"},{"line_number":2641,"context_line":"        self.assertEqual(resp.headers[\u0027Server\u0027],"},{"line_number":2642,"context_line":"                         (server_handler.server_type + \u0027/\u0027 + swift_version))"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a71b18c_2af0ebfd","line":2639,"range":{"start_line":2639,"start_character":11,"end_line":2639,"end_character":68},"updated":"2016-12-05 01:37:36.000000000","message":"I think this code changes the behavior of the unit test.\nIn my thought, `self.assertIn(verb, resp.headers[\u0027Allow\u0027].split(\u0027, \u0027))` is appropriate.","commit_id":"fb3021d50a1d338b7bd2a9e1233e592b1ffb37ac"},{"author":{"_account_id":18602,"name":"Gábor Antal","email":"antal@inf.u-szeged.hu","username":"antal"},"change_message_id":"65ba21569e45b8d26a82471f0f522885b20113a0","unresolved":false,"context_lines":[{"line_number":2636,"context_line":"        self.assertEqual(200, resp.status_int)"},{"line_number":2637,"context_line":"        for verb in \u0027OPTIONS GET POST PUT DELETE HEAD REPLICATE \\"},{"line_number":2638,"context_line":"                SSYNC\u0027.split():"},{"line_number":2639,"context_line":"            self.assertTrue(verb, resp.headers[\u0027Allow\u0027].split(\u0027, \u0027))"},{"line_number":2640,"context_line":"        self.assertEqual(len(resp.headers[\u0027Allow\u0027].split(\u0027, \u0027)), 8)"},{"line_number":2641,"context_line":"        self.assertEqual(resp.headers[\u0027Server\u0027],"},{"line_number":2642,"context_line":"                         (server_handler.server_type + \u0027/\u0027 + swift_version))"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a71b18c_3154c5c8","line":2639,"range":{"start_line":2639,"start_character":11,"end_line":2639,"end_character":68},"in_reply_to":"3a71b18c_2af0ebfd","updated":"2016-12-05 14:58:47.000000000","message":"Done","commit_id":"fb3021d50a1d338b7bd2a9e1233e592b1ffb37ac"},{"author":{"_account_id":14766,"name":"Kazuhiro MIYAHARA","email":"miyahara.kazuhiro@lab.ntt.co.jp","username":"miyahara"},"change_message_id":"77dff3a5e567f4285e825aaabea8bfe52617d3b0","unresolved":false,"context_lines":[{"line_number":6201,"context_line":"            self.assertFalse(hasattr(method, \u0027replication\u0027))"},{"line_number":6202,"context_line":"        for method_name in repl_methods:"},{"line_number":6203,"context_line":"            method \u003d getattr(self.object_controller, method_name)"},{"line_number":6204,"context_line":"            self.assertTrue(method.replication)"},{"line_number":6205,"context_line":""},{"line_number":6206,"context_line":"    def test_correct_allowed_method(self):"},{"line_number":6207,"context_line":"        # Test correct work for allowed method using"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a71b18c_6acd83b6","line":6204,"range":{"start_line":6204,"start_character":12,"end_line":6204,"end_character":47},"updated":"2016-12-05 01:37:36.000000000","message":"I think this code should not be changed, because `self.assertEqual(x, True)` is stricter than `self.assertTrue(x)`.\n`self.assertEqual(x, True)` asserts that `x \u003d\u003d True`.\n`self.assertTrue(x)` asserts that `bool(x) \u003d\u003d True`.","commit_id":"fb3021d50a1d338b7bd2a9e1233e592b1ffb37ac"},{"author":{"_account_id":18602,"name":"Gábor Antal","email":"antal@inf.u-szeged.hu","username":"antal"},"change_message_id":"65ba21569e45b8d26a82471f0f522885b20113a0","unresolved":false,"context_lines":[{"line_number":6201,"context_line":"            self.assertFalse(hasattr(method, \u0027replication\u0027))"},{"line_number":6202,"context_line":"        for method_name in repl_methods:"},{"line_number":6203,"context_line":"            method \u003d getattr(self.object_controller, method_name)"},{"line_number":6204,"context_line":"            self.assertTrue(method.replication)"},{"line_number":6205,"context_line":""},{"line_number":6206,"context_line":"    def test_correct_allowed_method(self):"},{"line_number":6207,"context_line":"        # Test correct work for allowed method using"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a71b18c_515141d7","line":6204,"range":{"start_line":6204,"start_character":12,"end_line":6204,"end_character":47},"in_reply_to":"3a71b18c_6acd83b6","updated":"2016-12-05 14:58:47.000000000","message":"Done","commit_id":"fb3021d50a1d338b7bd2a9e1233e592b1ffb37ac"}],"test/unit/obj/test_ssync.py":[{"author":{"_account_id":18603,"name":"Béla Vancsics","email":"vancsics@inf.u-szeged.hu","username":"vancsics"},"change_message_id":"f461342f7b2caffba3837ce514d0b525d0d83b17","unresolved":false,"context_lines":[{"line_number":391,"context_line":"        sync_paths \u003d []"},{"line_number":392,"context_line":"        for subreq in results.get(\u0027tx_updates\u0027):"},{"line_number":393,"context_line":"            if subreq.get(\u0027method\u0027) \u003d\u003d \u0027PUT\u0027:"},{"line_number":394,"context_line":"                self.assertTrue("},{"line_number":395,"context_line":"                    \u0027X-Object-Sysmeta-Ec-Frag-Index: %s\u0027 % rx_node_index"},{"line_number":396,"context_line":"                    in subreq.get(\u0027headers\u0027))"},{"line_number":397,"context_line":"                expected_body \u003d self._get_object_data(subreq[\u0027path\u0027],"},{"line_number":398,"context_line":"                                                      rx_node_index)"},{"line_number":399,"context_line":"                self.assertEqual(expected_body, subreq[\u0027body\u0027])"}],"source_content_type":"text/x-python","patch_set":15,"id":"1a1ced50_3a4e40c1","line":396,"range":{"start_line":394,"start_character":0,"end_line":396,"end_character":45},"updated":"2017-03-22 15:24:54.000000000","message":"self.assertTrue() -\u003e self.assertIn()","commit_id":"5e69554ba7c245d2bf3094c34871748cd59ae530"},{"author":{"_account_id":18603,"name":"Béla Vancsics","email":"vancsics@inf.u-szeged.hu","username":"vancsics"},"change_message_id":"f461342f7b2caffba3837ce514d0b525d0d83b17","unresolved":false,"context_lines":[{"line_number":598,"context_line":"        actual_sync_paths \u003d []"},{"line_number":599,"context_line":"        for subreq in results.get(\u0027tx_updates\u0027):"},{"line_number":600,"context_line":"            if subreq.get(\u0027method\u0027) \u003d\u003d \u0027PUT\u0027:"},{"line_number":601,"context_line":"                self.assertTrue("},{"line_number":602,"context_line":"                    \u0027X-Object-Sysmeta-Ec-Frag-Index: %s\u0027 % rx_node_index"},{"line_number":603,"context_line":"                    in subreq.get(\u0027headers\u0027))"},{"line_number":604,"context_line":"                expected_body \u003d self._get_object_data("},{"line_number":605,"context_line":"                    subreq[\u0027path\u0027], frag_index\u003drx_node_index)"},{"line_number":606,"context_line":"                self.assertEqual(expected_body, subreq[\u0027body\u0027])"}],"source_content_type":"text/x-python","patch_set":15,"id":"1a1ced50_ba9eb004","line":603,"range":{"start_line":601,"start_character":0,"end_line":603,"end_character":45},"updated":"2017-03-22 15:24:54.000000000","message":"Ditto","commit_id":"5e69554ba7c245d2bf3094c34871748cd59ae530"}],"test/unit/obj/test_updater.py":[{"author":{"_account_id":21239,"name":"Alex Szarka","email":"szarka@inf.u-szeged.hu","username":"xavvior"},"change_message_id":"bb7bf3eedc0730953aa439047cbc5070036e1c21","unresolved":false,"context_lines":[{"line_number":323,"context_line":"                            line.split(\u0027:\u0027)[1].strip()"},{"line_number":324,"context_line":"                        line \u003d inc.readline()"},{"line_number":325,"context_line":"                    self.assertIn(\u0027x-container-timestamp\u0027, headers)"},{"line_number":326,"context_line":"                    self.assertTrue(\u0027X-Backend-Storage-Policy-Index\u0027 in"},{"line_number":327,"context_line":"                                    headers)"},{"line_number":328,"context_line":"            except BaseException as err:"},{"line_number":329,"context_line":"                return err"},{"line_number":330,"context_line":"            return None"}],"source_content_type":"text/x-python","patch_set":17,"id":"5f201791_fb77a3d3","line":327,"range":{"start_line":326,"start_character":20,"end_line":327,"end_character":44},"updated":"2017-06-23 08:47:46.000000000","message":"Please transform this to assertIn form","commit_id":"e255b38c0d028c5e47ff6b9a18d088d202a67b99"}]}
