Skip to content

Commit 8ec331c

Browse files
committed
Add two_multi test from dr0ps
Tweaked it to return the expected newline character.
1 parent e3e5371 commit 8ec331c

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

gcode/src/lexer.rs

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -404,4 +404,44 @@ mod tests {
404404

405405
assert_eq!(got.value, "+3.14");
406406
}
407+
408+
#[test]
409+
fn two_multi() {
410+
let mut lexer = Lexer::new("G0 X1\nG1 Y2");
411+
412+
let got = lexer.next().unwrap();
413+
assert_eq!(got.value, "G");
414+
assert_eq!(got.span.line, 0);
415+
416+
let got = lexer.next().unwrap();
417+
assert_eq!(got.value, "0");
418+
assert_eq!(got.span.line, 0);
419+
420+
let got = lexer.next().unwrap();
421+
assert_eq!(got.value, "X");
422+
assert_eq!(got.span.line, 0);
423+
424+
let got = lexer.next().unwrap();
425+
assert_eq!(got.value, "1");
426+
assert_eq!(got.span.line, 0);
427+
428+
let got = lexer.next().unwrap();
429+
assert_eq!(got.value, "\n");
430+
431+
let got = lexer.next().unwrap();
432+
assert_eq!(got.value, "G");
433+
assert_eq!(got.span.line, 1);
434+
435+
let got = lexer.next().unwrap();
436+
assert_eq!(got.value, "1");
437+
assert_eq!(got.span.line, 1);
438+
439+
let got = lexer.next().unwrap();
440+
assert_eq!(got.value, "Y");
441+
assert_eq!(got.span.line, 1);
442+
443+
let got = lexer.next().unwrap();
444+
assert_eq!(got.value, "2");
445+
assert_eq!(got.span.line, 1);
446+
}
407447
}

0 commit comments

Comments
 (0)