about summary refs log tree commit diff
path: root/crates/parser/src
diff options
context:
space:
mode:
Diffstat (limited to 'crates/parser/src')
-rw-r--r--crates/parser/src/tests/entries.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/crates/parser/src/tests/entries.rs b/crates/parser/src/tests/entries.rs
index 947922d8b32..18d9ece2a2c 100644
--- a/crates/parser/src/tests/entries.rs
+++ b/crates/parser/src/tests/entries.rs
@@ -21,12 +21,22 @@ fn stmt() {
     check_prefix(PrefixEntryPoint::Stmt, "92; fn", "92");
     check_prefix(PrefixEntryPoint::Stmt, "let _ = 92; 1", "let _ = 92");
     check_prefix(PrefixEntryPoint::Stmt, "pub fn f() {} = 92", "pub fn f() {}");
+    check_prefix(PrefixEntryPoint::Stmt, "struct S;;", "struct S;");
+    check_prefix(PrefixEntryPoint::Stmt, "fn f() {};", "fn f() {}");
     check_prefix(PrefixEntryPoint::Stmt, ";;;", ";");
     check_prefix(PrefixEntryPoint::Stmt, "+", "+");
     check_prefix(PrefixEntryPoint::Stmt, "@", "@");
     check_prefix(PrefixEntryPoint::Stmt, "loop {} - 1", "loop {}");
 }
 
+#[test]
+fn pat() {
+    check_prefix(PrefixEntryPoint::Pat, "x y", "x");
+    check_prefix(PrefixEntryPoint::Pat, "fn f() {}", "fn");
+    // FIXME: this one is wrong
+    check_prefix(PrefixEntryPoint::Pat, ".. ..", ".. ..");
+}
+
 fn check_prefix(entry: PrefixEntryPoint, input: &str, prefix: &str) {
     let lexed = LexedStr::new(input);
     let input = lexed.to_input();