aboutsummaryrefslogtreecommitdiffstats
path: root/tests/test_pat.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_pat.rs')
-rw-r--r--tests/test_pat.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/test_pat.rs b/tests/test_pat.rs
index 73388dd7..399de028 100644
--- a/tests/test_pat.rs
+++ b/tests/test_pat.rs
@@ -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,
+ ],
+ },
+ }
+ "###);
+}