mirror of
https://github.com/gfx-rs/wgpu.git
synced 2026-04-22 03:02:01 -04:00
Add simple test for glsl-new lexer
This commit is contained in:
committed by
Dzmitry Malyshau
parent
7d5bc0b2e2
commit
aa70703fee
36
src/front/glsl_new/lex_tests.rs
Normal file
36
src/front/glsl_new/lex_tests.rs
Normal file
@@ -0,0 +1,36 @@
|
||||
use super::lex::Lexer;
|
||||
use super::parser::Token;
|
||||
|
||||
#[test]
|
||||
fn glsl_lex_simple() {
|
||||
let source = "void main() {\n}";
|
||||
let lex = Lexer::new(source);
|
||||
let tokens: Vec<Token> = lex.collect();
|
||||
assert_eq!(tokens.len(), 6);
|
||||
|
||||
let mut iter = tokens.iter();
|
||||
assert_eq!(
|
||||
format!("{:?}", iter.next().unwrap()),
|
||||
"Void(TokenMetadata { line: 0, chars: 0..4 })"
|
||||
);
|
||||
assert_eq!(
|
||||
format!("{:?}", iter.next().unwrap()),
|
||||
"Identifier((TokenMetadata { line: 0, chars: 5..9 }, \"main\"))"
|
||||
);
|
||||
assert_eq!(
|
||||
format!("{:?}", iter.next().unwrap()),
|
||||
"LeftParen(TokenMetadata { line: 0, chars: 9..10 })"
|
||||
);
|
||||
assert_eq!(
|
||||
format!("{:?}", iter.next().unwrap()),
|
||||
"RightParen(TokenMetadata { line: 0, chars: 10..11 })"
|
||||
);
|
||||
assert_eq!(
|
||||
format!("{:?}", iter.next().unwrap()),
|
||||
"LeftBrace(TokenMetadata { line: 0, chars: 12..13 })"
|
||||
);
|
||||
assert_eq!(
|
||||
format!("{:?}", iter.next().unwrap()),
|
||||
"RightBrace(TokenMetadata { line: 1, chars: 0..1 })"
|
||||
);
|
||||
}
|
||||
@@ -3,6 +3,9 @@ use crate::{
|
||||
};
|
||||
|
||||
mod lex;
|
||||
#[cfg(test)]
|
||||
mod lex_tests;
|
||||
|
||||
use lex::Lexer;
|
||||
mod error;
|
||||
use error::ParseError;
|
||||
|
||||
Reference in New Issue
Block a user