test(lexer): add decimal tests
add tests for implicit 0 decimals and normal decimals
This commit is contained in:
1 file changed
+18
-1
+18
-1
@@ -6,7 +6,7 @@ use crate::math::{
|
||||
};
|
||||
|
||||
#[test]
|
||||
pub fn test_lexer() {
|
||||
pub fn test_lexer_general() {
|
||||
let lexer = lexer::from("(1 + 2) * 3 + (5 ^ 8 % 7)");
|
||||
let tokens = lexer.collect::<Vec<_>>();
|
||||
let expected_tokens = [
|
||||
@@ -31,3 +31,20 @@ pub fn test_lexer() {
|
||||
assert_eq!(tokens[i], expected_tokens[i]);
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
pub fn test_lexer_decimals() {
|
||||
let lexer = lexer::from("0.5 + 0.1111111111 + .5");
|
||||
let tokens = lexer.collect::<Vec<_>>();
|
||||
let expected_tokens = [
|
||||
Token::Number(dec!(0.5)),
|
||||
Token::Operator(Operator::Add),
|
||||
Token::Number(dec!(0.1111111111)),
|
||||
Token::Operator(Operator::Add),
|
||||
Token::Number(dec!(0.5)),
|
||||
];
|
||||
|
||||
for i in 0..tokens.len() {
|
||||
assert_eq!(tokens[i], expected_tokens[i]);
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user