def test_cannot_peak_beyond_specified_lookahead(self): peaker = Peaker((x for x in 'abcd'), lookahead=1) with self.assertRaises(Exception): peaker.peak(lookahead=3)
def test_peak_doesnt_move_stream_forward(self): generator = cycle('abc') peaker = Peaker(stream=generator) self.assertEqual(peaker.peak(), 'a') self.assertEqual(peaker.peak(), 'a')
def test_peaker_can_have_n_lookahead(self): peaker = Peaker((x for x in 'abcd'), lookahead=3) self.assertEqual(peaker.peak(lookahead=1), 'a') self.assertEqual(peaker.peak(lookahead=2), 'b') self.assertEqual(peaker.peak(lookahead=3), 'c')