From 77c3df99c0dad22ac2888e5cb9cc4e029cf854c2 Mon Sep 17 00:00:00 2001 From: Eryn Wells Date: Tue, 27 Dec 2016 10:39:07 -0700 Subject: [PATCH] New simple expression test --- src/lexer/mod.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/lexer/mod.rs b/src/lexer/mod.rs index 5f9e0e6..87d88db 100644 --- a/src/lexer/mod.rs +++ b/src/lexer/mod.rs @@ -470,6 +470,16 @@ mod tests { check_single_token("#h4A65", Token::Number(Number::from_int(0x4A65))); } + #[test] + fn lexes_simple_sexpression() { + let mut lexer = Lexer::new("(+ 3.4 6.8)"); + assert_next_token(&mut lexer, &Token::LeftParen(String::from("("))); + assert_next_token(&mut lexer, &Token::Identifier(String::from("+"))); + assert_next_token(&mut lexer, &Token::Number(Number::new(3.4))); + assert_next_token(&mut lexer, &Token::Number(Number::new(6.8))); + assert_next_token(&mut lexer, &Token::RightParen(String::from(")"))); + } + fn check_single_token(input: &str, expected: Token) { let mut lexer = Lexer::new(input); assert_next_token(&mut lexer, &expected);