def test_tokenstream_look_push(): # look, push s = TokenStream(iter((Token('a', 1), Token('b', 2), Token('c', 3)))) assert s.current == Token('a', 1) assert s.look() == Token('b', 2) s.next() assert s.look() == Token('c', 3) s.push(Token('b', 2)) assert s.look() == Token('b', 2) s.push(Token('e', 4), current=True) assert s.current == Token('e', 4) assert s.look() == Token('b', 2)