)]}'
{"neutron/tests/unit/test_l3_schedulers.py":[{"author":{"_account_id":9970,"name":"John Kasperski","email":"jckasper@linux.vnet.ibm.com","username":"jckasper"},"change_message_id":"e8a5da1ac48e8f6afbfb070345a73c5c751a59eb","unresolved":false,"context_lines":[{"line_number":377,"context_line":"        ]"},{"line_number":378,"context_line":"        plugin.assert_has_calls(expected_calls)"},{"line_number":379,"context_line":""},{"line_number":380,"context_line":"    def test_schedule_dvr_router_with_snatbinding_no_gw(self):"},{"line_number":381,"context_line":"        scheduler, agent, plugin \u003d self._prepare_schedule_dvr_tests()"},{"line_number":382,"context_line":"        sync_router \u003d {"},{"line_number":383,"context_line":"            \u0027id\u0027: \u0027foo_router_id\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa98f980_0871ada7","line":380,"updated":"2014-09-04 20:00:59.000000000","message":"I\u0027m not seeing it.   Looks to me that this routine is exact same as\ntest_schedule_dvr_router_without_snatbinding_no_gw()","commit_id":"9dccf7c8594a214b034e51594afd097005a7e38b"},{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"bf820df9d980e822d6d0fafe8b1cabe09d89ba0d","unresolved":false,"context_lines":[{"line_number":377,"context_line":"        ]"},{"line_number":378,"context_line":"        plugin.assert_has_calls(expected_calls)"},{"line_number":379,"context_line":""},{"line_number":380,"context_line":"    def test_schedule_dvr_router_with_snatbinding_no_gw(self):"},{"line_number":381,"context_line":"        scheduler, agent, plugin \u003d self._prepare_schedule_dvr_tests()"},{"line_number":382,"context_line":"        sync_router \u003d {"},{"line_number":383,"context_line":"            \u0027id\u0027: \u0027foo_router_id\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa98f980_a7434e11","line":380,"in_reply_to":"fa98f980_0871ada7","updated":"2014-09-05 17:20:29.000000000","message":"Good eye!  This is actually my doing since I split this patch out of the original.  I actually did this on purpose.  You\u0027ll see that the tests diverge in a followon patch [1].  I wanted the UT framework to be in place before attempting any of the refactoring.\n\nWe could combine these two methods in to one and then split them out when needed in [1].  However, I intend to merge these patches soon to address problems and so I will not require this change.  I\u0027ll keep my +2 in place.\n\n[1] https://review.openstack.org/#/c/118706","commit_id":"9dccf7c8594a214b034e51594afd097005a7e38b"},{"author":{"_account_id":9970,"name":"John Kasperski","email":"jckasper@linux.vnet.ibm.com","username":"jckasper"},"change_message_id":"e8a5da1ac48e8f6afbfb070345a73c5c751a59eb","unresolved":false,"context_lines":[{"line_number":787,"context_line":"        self.assertFalse(mock_unbind.called)"},{"line_number":788,"context_line":""},{"line_number":789,"context_line":"    def test_schedule_snat_router_with_snat_candidates(self):"},{"line_number":790,"context_line":"        agent, router \u003d self._prepare_schedule_snat_tests()"},{"line_number":791,"context_line":"        with contextlib.nested("},{"line_number":792,"context_line":"            mock.patch.object(query.Query, \u0027first\u0027),"},{"line_number":793,"context_line":"            mock.patch.object(self.dut, \u0027get_l3_agents\u0027),"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa98f980_66150b48","line":790,"updated":"2014-09-04 20:00:59.000000000","message":"Lines 757-771 are the same as 790-804.    Move logic into separate routine ?","commit_id":"9dccf7c8594a214b034e51594afd097005a7e38b"},{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"a000dcc64f4607d58e6ba89dfa10237b100feab7","unresolved":false,"context_lines":[{"line_number":787,"context_line":"        self.assertFalse(mock_unbind.called)"},{"line_number":788,"context_line":""},{"line_number":789,"context_line":"    def test_schedule_snat_router_with_snat_candidates(self):"},{"line_number":790,"context_line":"        agent, router \u003d self._prepare_schedule_snat_tests()"},{"line_number":791,"context_line":"        with contextlib.nested("},{"line_number":792,"context_line":"            mock.patch.object(query.Query, \u0027first\u0027),"},{"line_number":793,"context_line":"            mock.patch.object(self.dut, \u0027get_l3_agents\u0027),"}],"source_content_type":"text/x-python","patch_set":2,"id":"fa98f980_870e4ae3","line":790,"in_reply_to":"fa98f980_66150b48","updated":"2014-09-05 17:22:20.000000000","message":"Duplicating code once does not hit my threshold for a must-refactor.  I\u0027ll leave it up to the authors to address this or not.","commit_id":"9dccf7c8594a214b034e51594afd097005a7e38b"}]}
