]> git.proxmox.com Git - rustc.git/blobdiff - vendor/syn/tests/test_pat.rs
New upstream version 1.49.0~beta.4+dfsg1
[rustc.git] / vendor / syn / tests / test_pat.rs
index 73388dd79d1b8039ae32abc704926eba4fe792cc..399de0289d76a318162209ac404921053d697c26 100644 (file)
@@ -1,4 +1,9 @@
+#[macro_use]
+mod macros;
+
+use proc_macro2::{Delimiter, Group, TokenStream, TokenTree};
 use quote::quote;
+use std::iter::FromIterator;
 use syn::{Item, Pat, Stmt};
 
 #[test]
@@ -36,3 +41,27 @@ fn test_leading_vert() {
     syn::parse_str::<Stmt>("let NS { f: | A }: NS;").unwrap_err();
     syn::parse_str::<Stmt>("let NS { f: || A }: NS;").unwrap_err();
 }
+
+#[test]
+fn test_group() {
+    let group = Group::new(Delimiter::None, quote!(Some(_)));
+    let tokens = TokenStream::from_iter(vec![TokenTree::Group(group)]);
+
+    snapshot!(tokens as Pat, @r###"
+    Pat::TupleStruct {
+        path: Path {
+            segments: [
+                PathSegment {
+                    ident: "Some",
+                    arguments: None,
+                },
+            ],
+        },
+        pat: PatTuple {
+            elems: [
+                Pat::Wild,
+            ],
+        },
+    }
+    "###);
+}