diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:20:29 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:20:29 +0000 |
commit | 631cd5845e8de329d0e227aaa707d7ea228b8f8f (patch) | |
tree | a1b87c8f8cad01cf18f7c5f57a08f102771ed303 /vendor/syn/tests/test_expr.rs | |
parent | Adding debian version 1.69.0+dfsg1-1. (diff) | |
download | rustc-631cd5845e8de329d0e227aaa707d7ea228b8f8f.tar.xz rustc-631cd5845e8de329d0e227aaa707d7ea228b8f8f.zip |
Merging upstream version 1.70.0+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/syn/tests/test_expr.rs')
-rw-r--r-- | vendor/syn/tests/test_expr.rs | 64 |
1 files changed, 35 insertions, 29 deletions
diff --git a/vendor/syn/tests/test_expr.rs b/vendor/syn/tests/test_expr.rs index e5b151fd8..c7230c6dc 100644 --- a/vendor/syn/tests/test_expr.rs +++ b/vendor/syn/tests/test_expr.rs @@ -1,9 +1,10 @@ +#![allow(clippy::uninlined_format_args)] + #[macro_use] mod macros; use proc_macro2::{Delimiter, Group, Ident, Punct, Spacing, Span, TokenStream, TokenTree}; use quote::quote; -use std::iter::FromIterator; use syn::{Expr, ExprRange}; #[test] @@ -11,8 +12,8 @@ fn test_expr_parse() { let tokens = quote!(..100u32); snapshot!(tokens as Expr, @r###" Expr::Range { - limits: HalfOpen, - to: Some(Expr::Lit { + limits: RangeLimits::HalfOpen, + end: Some(Expr::Lit { lit: 100u32, }), } @@ -21,8 +22,8 @@ fn test_expr_parse() { let tokens = quote!(..100u32); snapshot!(tokens as ExprRange, @r###" ExprRange { - limits: HalfOpen, - to: Some(Expr::Lit { + limits: RangeLimits::HalfOpen, + end: Some(Expr::Lit { lit: 100u32, }), } @@ -41,7 +42,6 @@ fn test_await() { segments: [ PathSegment { ident: "fut", - arguments: None, }, ], }, @@ -61,16 +61,15 @@ fn test_tuple_multi_index() { segments: [ PathSegment { ident: "tuple", - arguments: None, }, ], }, }, - member: Unnamed(Index { + member: Member::Unnamed(Index { index: 0, }), }, - member: Unnamed(Index { + member: Member::Unnamed(Index { index: 0, }), } @@ -114,7 +113,6 @@ fn test_macro_variable_func() { segments: [ PathSegment { ident: "f", - arguments: None, }, ], }, @@ -134,39 +132,34 @@ fn test_macro_variable_func() { Expr::Call { attrs: [ Attribute { - style: Outer, - path: Path { + style: AttrStyle::Outer, + meta: Meta::Path { segments: [ PathSegment { ident: "outside", - arguments: None, }, ], }, - tokens: TokenStream(``), }, ], func: Expr::Group { expr: Expr::Path { attrs: [ Attribute { - style: Outer, - path: Path { + style: AttrStyle::Outer, + meta: Meta::Path { segments: [ PathSegment { ident: "inside", - arguments: None, }, ], }, - tokens: TokenStream(``), }, ], path: Path { segments: [ PathSegment { ident: "f", - arguments: None, }, ], }, @@ -192,11 +185,10 @@ fn test_macro_variable_macro() { segments: [ PathSegment { ident: "m", - arguments: None, }, ], }, - delimiter: Paren, + delimiter: MacroDelimiter::Paren, tokens: TokenStream(``), }, } @@ -217,7 +209,6 @@ fn test_macro_variable_struct() { segments: [ PathSegment { ident: "S", - arguments: None, }, ], }, @@ -249,7 +240,6 @@ fn test_macro_variable_match_arm() { segments: [ PathSegment { ident: "v", - arguments: None, }, ], }, @@ -261,16 +251,14 @@ fn test_macro_variable_match_arm() { expr: Expr::Tuple { attrs: [ Attribute { - style: Outer, - path: Path { + style: AttrStyle::Outer, + meta: Meta::Path { segments: [ PathSegment { ident: "a", - arguments: None, }, ], }, - tokens: TokenStream(``), }, ], }, @@ -289,9 +277,9 @@ fn test_closure_vs_rangefull() { snapshot!(tokens as Expr, @r###" Expr::MethodCall { receiver: Expr::Closure { - output: Default, + output: ReturnType::Default, body: Expr::Range { - limits: HalfOpen, + limits: RangeLimits::HalfOpen, }, }, method: "method", @@ -304,3 +292,21 @@ fn test_postfix_operator_after_cast() { syn::parse_str::<Expr>("|| &x as T[0]").unwrap_err(); syn::parse_str::<Expr>("|| () as ()()").unwrap_err(); } + +#[test] +fn test_ranges() { + syn::parse_str::<Expr>("..").unwrap(); + syn::parse_str::<Expr>("..hi").unwrap(); + syn::parse_str::<Expr>("lo..").unwrap(); + syn::parse_str::<Expr>("lo..hi").unwrap(); + + syn::parse_str::<Expr>("..=").unwrap_err(); + syn::parse_str::<Expr>("..=hi").unwrap(); + syn::parse_str::<Expr>("lo..=").unwrap_err(); + syn::parse_str::<Expr>("lo..=hi").unwrap(); + + syn::parse_str::<Expr>("...").unwrap_err(); + syn::parse_str::<Expr>("...hi").unwrap_err(); + syn::parse_str::<Expr>("lo...").unwrap_err(); + syn::parse_str::<Expr>("lo...hi").unwrap_err(); +} |