| 1601 | |
| 1602 | #[test] |
| 1603 | fn test_peekable_lexer() { |
| 1604 | let mut input = b"a b 123".as_ref(); |
| 1605 | let mut lexer = Lexer::from(&mut input).peekable(); |
| 1606 | assert_eq!(new_auto_symbol("a"), lexer.peek().unwrap().token); |
| 1607 | assert_eq!(new_auto_symbol("a"), lexer.peek().unwrap().token); |
| 1608 | assert_eq!(new_auto_symbol("a"), lexer.read().unwrap().token); |
| 1609 | assert_eq!(new_auto_symbol("b"), lexer.read().unwrap().token); |
| 1610 | assert_eq!(Token::Integer(123), lexer.peek().unwrap().token); |
| 1611 | assert_eq!(Token::Integer(123), lexer.read().unwrap().token); |
| 1612 | assert_eq!(Token::Eof, lexer.peek().unwrap().token); |
| 1613 | assert_eq!(Token::Eof, lexer.read().unwrap().token); |
| 1614 | } |
| 1615 | |
| 1616 | #[test] |
| 1617 | fn test_recoverable_errors() { |