)]}'
{"manila/tests/network/neutron/test_neutron_plugin.py":[{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"f68420371d4470f00523e7adf1e3aa20dd3542bc","unresolved":false,"context_lines":[{"line_number":701,"context_line":"        self.sleep_mock.assert_not_called()"},{"line_number":702,"context_line":""},{"line_number":703,"context_line":"    @ddt.data((\u0027DOWN\u0027, \u0027ACTIVE\u0027), (\u0027DOWN\u0027, \u0027DOWN\u0027), (\u0027ACTIVE\u0027, \u0027DOWN\u0027))"},{"line_number":704,"context_line":"    def test_wait_for_bind_two_ports_no_bind(self, state):"},{"line_number":705,"context_line":"        fake_neut_port1 \u003d copy.copy(fake_neutron_port)"},{"line_number":706,"context_line":"        fake_neut_port1[\u0027status\u0027] \u003d state[0]"},{"line_number":707,"context_line":"        fake_neut_port2 \u003d copy.copy(fake_neutron_port)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a95cdbc_009adfb8","side":"PARENT","line":704,"range":{"start_line":704,"start_character":8,"end_line":704,"end_character":44},"updated":"2016-10-09 07:40:27.000000000","message":"why removed?","commit_id":"360be9607e4c2931449b831ea62c95d7d503c440"}],"manila/tests/share/drivers/zfsonlinux/test_utils.py":[{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"f68420371d4470f00523e7adf1e3aa20dd3542bc","unresolved":false,"context_lines":[{"line_number":127,"context_line":"        self.ssh_executor.return_value.assert_called_once_with("},{"line_number":128,"context_line":"            \u0027fake\u0027, \u0027--foo\u0027, \u0027--bar\u0027, run_as_root\u003dTrue)"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"    def test_execute_with_retry(self):"},{"line_number":131,"context_line":"        self.mock_object(time, \u0027sleep\u0027)"},{"line_number":132,"context_line":"        self.mock_object(self.driver, \u0027execute\u0027, mock.Mock("},{"line_number":133,"context_line":"            side_effect\u003d[exception.ProcessExecutionError(\u0027FAKE\u0027), None]))"},{"line_number":134,"context_line":"        self.driver.execute_with_retry(\u0027foo\u0027, \u0027bar\u0027)"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"        self.assertEqual(2, self.driver.execute.call_count)"},{"line_number":137,"context_line":"        self.driver.execute.assert_has_calls("},{"line_number":138,"context_line":"            [mock.call(\u0027foo\u0027, \u0027bar\u0027), mock.call(\u0027foo\u0027, \u0027bar\u0027)])"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"    def test_execute_with_retry_exceeded(self):"},{"line_number":141,"context_line":"        self.mock_object(time, \u0027sleep\u0027)"},{"line_number":142,"context_line":"        self.mock_object(self.driver, \u0027execute\u0027, mock.Mock("},{"line_number":143,"context_line":"            side_effect\u003dexception.ProcessExecutionError(\u0027FAKE\u0027)))"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"        self.assertRaises("},{"line_number":146,"context_line":"            exception.ProcessExecutionError,"},{"line_number":147,"context_line":"            self.driver.execute_with_retry,"},{"line_number":148,"context_line":"            \u0027foo\u0027, \u0027bar\u0027,"},{"line_number":149,"context_line":"        )"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"        self.assertEqual(36, self.driver.execute.call_count)"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"    @ddt.data(True, False)"},{"line_number":154,"context_line":"    def test__get_option(self, pool_level):"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a95cdbc_e0cc13bd","side":"PARENT","line":151,"range":{"start_line":130,"start_character":0,"end_line":151,"end_character":60},"updated":"2016-10-09 07:40:27.000000000","message":"why removed?","commit_id":"360be9607e4c2931449b831ea62c95d7d503c440"}],"manila/tests/test_utils.py":[{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"f68420371d4470f00523e7adf1e3aa20dd3542bc","unresolved":false,"context_lines":[{"line_number":700,"context_line":"        retryable \u003d utils.retry("},{"line_number":701,"context_line":"            TypeError,"},{"line_number":702,"context_line":"            sleep\u003dmock_sleep,"},{"line_number":703,"context_line":"            retries\u003d4).__call__(self._raised(TypeError))"},{"line_number":704,"context_line":"        self.assertRaises(TypeError, retryable)"},{"line_number":705,"context_line":"        self.assertEqual([mock.call(2 ** i) for i in range(1, 4)],"},{"line_number":706,"context_line":"                         mock_sleep.mock_calls)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a95cdbc_c025575c","line":703,"range":{"start_line":703,"start_character":23,"end_line":703,"end_character":31},"updated":"2016-10-09 07:40:27.000000000","message":"no need to invoke __call__ explicitly.\nutils.retry(\n            TypeError,\n            sleep\u003dmock_sleep,\n            retries\u003d4)(self._raised(TypeError))","commit_id":"4568420fa78356d3acd1bf5914d1905ac77e60fe"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"f68420371d4470f00523e7adf1e3aa20dd3542bc","unresolved":false,"context_lines":[{"line_number":711,"context_line":"        retryable \u003d utils.retry("},{"line_number":712,"context_line":"            TypeError, wait_random\u003dTrue,"},{"line_number":713,"context_line":"            sleep\u003dmock.Mock(),"},{"line_number":714,"context_line":"            retries\u003d4).__call__(self._raised(TypeError))"},{"line_number":715,"context_line":"        self.assertRaises(TypeError, retryable)"},{"line_number":716,"context_line":"        self.assertEqual([mock.call(1, 2 ** i) for i in range(1, 4)],"},{"line_number":717,"context_line":"                         mock_random.mock_calls)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a95cdbc_e0289335","line":714,"range":{"start_line":714,"start_character":23,"end_line":714,"end_character":31},"updated":"2016-10-09 07:40:27.000000000","message":"ditto","commit_id":"4568420fa78356d3acd1bf5914d1905ac77e60fe"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"f68420371d4470f00523e7adf1e3aa20dd3542bc","unresolved":false,"context_lines":[{"line_number":721,"context_line":"        retryable \u003d utils.retry("},{"line_number":722,"context_line":"            TypeError,"},{"line_number":723,"context_line":"            sleep\u003dmock.Mock(),"},{"line_number":724,"context_line":"            retries\u003d2).__call__(self._raised(TypeError))"},{"line_number":725,"context_line":"        self.assertRaises(TypeError, retryable)"},{"line_number":726,"context_line":"        mock_log.assert_has_calls("},{"line_number":727,"context_line":"            [mock.call.debug(\u0027Failed attempt %s\u0027, 2)])"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a95cdbc_00249f5b","line":724,"range":{"start_line":724,"start_character":23,"end_line":724,"end_character":31},"updated":"2016-10-09 07:40:27.000000000","message":"ditto","commit_id":"4568420fa78356d3acd1bf5914d1905ac77e60fe"}],"manila/utils.py":[{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"f68420371d4470f00523e7adf1e3aa20dd3542bc","unresolved":false,"context_lines":[{"line_number":525,"context_line":"        return wait_val"},{"line_number":526,"context_line":""},{"line_number":527,"context_line":"    @staticmethod"},{"line_number":528,"context_line":"    def retry_after_log(fn, attempt_number, trial_time_taken):"},{"line_number":529,"context_line":"        LOG.debug(\"Failed attempt %s\", attempt_number)"},{"line_number":530,"context_line":"        LOG.debug(\"Have been at this for %s seconds\","},{"line_number":531,"context_line":"                  trial_time_taken)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a95cdbc_457cf9b4","line":528,"range":{"start_line":528,"start_character":8,"end_line":528,"end_character":23},"updated":"2016-10-09 07:40:27.000000000","message":"log_after_retry better?","commit_id":"4568420fa78356d3acd1bf5914d1905ac77e60fe"}]}
