initial commit
This commit is contained in:
		
							
								
								
									
										57
									
								
								src/tests/mod.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								src/tests/mod.rs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,57 @@ | ||||
| #[cfg(test)] | ||||
| mod test { | ||||
|     use crate::grammar; | ||||
|     use grammar::AtomParser as Parser; | ||||
|     #[test] | ||||
|     fn int_literals() { | ||||
|         assert!(Parser::new().parse("22").is_ok()); | ||||
|         assert!(Parser::new().parse("(22)").is_ok()); | ||||
|         assert!(Parser::new().parse("((22))").is_ok()); | ||||
|     } | ||||
|  | ||||
|     #[test] | ||||
|     fn test_float_dots() { | ||||
|         assert!(Parser::new().parse("1.1").is_ok()); | ||||
|         assert!(Parser::new().parse("-1.1").is_ok()); | ||||
|         assert!(Parser::new().parse(".1").is_ok()); | ||||
|         assert!(Parser::new().parse("-.1").is_ok()); | ||||
|     } | ||||
|  | ||||
|     #[test] | ||||
|     fn test_float_exps() { | ||||
|         assert!(Parser::new().parse("(1e1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1e1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1e-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1e-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1E1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1E1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1E-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1E-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1.1e1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1.1e1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1.1e-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1.1e-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1.1E1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1.1E1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1.1E-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1.1E-1)").is_ok()); | ||||
|  | ||||
|         assert!(Parser::new().parse("(1.0e1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-0.1e1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1.0e-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1.0e-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1.E1)").is_err()); | ||||
|         assert!(Parser::new().parse("(-1E1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1E-10)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1E-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1.1e1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1.1e1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1.1e-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1.1e-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1.1E1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1.1E1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(1.1E-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("(-1.1E-1)").is_ok()); | ||||
|         assert!(Parser::new().parse("FOOBAR").is_err()); | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user