| 1760 | |
| 1761 | #[test] |
| 1762 | fn test_unrecoverable_io_error() { |
| 1763 | let mut reader = FaultyReader::new("3 + 5\n"); |
| 1764 | let mut lexer = Lexer::from(&mut reader); |
| 1765 | |
| 1766 | assert_eq!(Token::Integer(3), lexer.read().unwrap().token); |
| 1767 | assert_eq!(Token::Plus, lexer.read().unwrap().token); |
| 1768 | assert_eq!(Token::Integer(5), lexer.read().unwrap().token); |
| 1769 | assert_eq!(Token::Eol, lexer.read().unwrap().token); |
| 1770 | let e = lexer.read().unwrap_err(); |
| 1771 | assert_eq!(io::ErrorKind::InvalidData, e.kind()); |
| 1772 | let e = lexer.read().unwrap_err(); |
| 1773 | assert_eq!(io::ErrorKind::Other, e.kind()); |
| 1774 | } |
| 1775 | } |