parent
4fab810d1f
commit
ae63ce8e20
2 changed files with 10 additions and 15 deletions
|
@ -141,17 +141,3 @@ impl<T> Iterator for Parser<T> where T: Iterator<Item=LexerResult> {
|
||||||
out
|
out
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(test)]
|
|
||||||
mod tests {
|
|
||||||
use sibillexer::Lexer;
|
|
||||||
use sibiltypes::Pair;
|
|
||||||
use super::Parser;
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn it_works() {
|
|
||||||
let lexer = Lexer::new("(ab)".chars());
|
|
||||||
let mut parser = Parser::new(lexer);
|
|
||||||
let obj = parser.next().unwrap().unwrap();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
@ -11,7 +11,7 @@ extern crate sibiltypes;
|
||||||
use sibillexer::{Lex, Token};
|
use sibillexer::{Lex, Token};
|
||||||
use sibillexer::Result as LexerResult;
|
use sibillexer::Result as LexerResult;
|
||||||
use sibilparser::Parser;
|
use sibilparser::Parser;
|
||||||
use sibiltypes::{Obj, Pair, Sym};
|
use sibiltypes::{Bool, Obj, Pair, Sym};
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn single_sym() {
|
fn single_sym() {
|
||||||
|
@ -30,3 +30,12 @@ fn single_pair() {
|
||||||
assert_eq!(parser.next(), Some(Ok(Obj::new(Pair::empty()))));
|
assert_eq!(parser.next(), Some(Ok(Obj::new(Pair::empty()))));
|
||||||
assert_eq!(parser.next(), None);
|
assert_eq!(parser.next(), None);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn single_bool() {
|
||||||
|
let lex: LexerResult = Ok(Lex::new(Token::Bool(true), "#t", 0, 0));
|
||||||
|
let tokens = vec![lex].into_iter();
|
||||||
|
let mut parser = Parser::new(tokens);
|
||||||
|
assert_eq!(parser.next(), Some(Ok(Obj::new(Bool::True))));
|
||||||
|
assert_eq!(parser.next(), None);
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue