def test_timeouts_in_a_row(self): rnode = RoutingNode(tc.NODES[0], 1) eq_(rnode.timeouts_in_a_row(), 0) eq_(rnode.timeouts_in_a_row(True), 0) eq_(rnode.timeouts_in_a_row(False), 0) # got query rnode.add_event(time.time(), node.QUERY) eq_(rnode.timeouts_in_a_row(), 0) eq_(rnode.timeouts_in_a_row(True), 0) eq_(rnode.timeouts_in_a_row(False), 0) # got timeout rnode.add_event(time.time(), node.TIMEOUT) eq_(rnode.timeouts_in_a_row(), 1) eq_(rnode.timeouts_in_a_row(True), 1) eq_(rnode.timeouts_in_a_row(False), 1) # got query rnode.add_event(time.time(), node.QUERY) eq_(rnode.timeouts_in_a_row(), 0) eq_(rnode.timeouts_in_a_row(True), 0) eq_(rnode.timeouts_in_a_row(False), 1) # got timeout rnode.add_event(time.time(), node.TIMEOUT) eq_(rnode.timeouts_in_a_row(), 1) eq_(rnode.timeouts_in_a_row(True), 1) eq_(rnode.timeouts_in_a_row(False), 2) # got response rnode.add_event(time.time(), node.RESPONSE) eq_(rnode.timeouts_in_a_row(), 0) eq_(rnode.timeouts_in_a_row(True), 0) eq_(rnode.timeouts_in_a_row(False), 0)