From 837bab24c1e42572cb7340d43ef1e073b6333d95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Teemu=20P=C3=A4tsi?= Date: Mon, 26 May 2025 17:00:35 +0300 Subject: [PATCH] expr: Add tests for `is_valid_range_quantifier` function --- src/uu/expr/src/syntax_tree.rs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/uu/expr/src/syntax_tree.rs b/src/uu/expr/src/syntax_tree.rs index 1d3f74bb7..a966fca49 100644 --- a/src/uu/expr/src/syntax_tree.rs +++ b/src/uu/expr/src/syntax_tree.rs @@ -793,6 +793,7 @@ pub fn is_truthy(s: &NumOrStr) -> bool { mod test { use crate::ExprError; use crate::ExprError::InvalidBracketContent; + use crate::syntax_tree::is_valid_range_quantifier; use super::{ AstNode, AstNodeInner, BinOp, NumericOp, RelationOp, StringOp, check_posix_regex_errors, @@ -1041,4 +1042,22 @@ mod test { Err(InvalidBracketContent) ); } + + #[test] + fn test_is_valid_range_quantifier() { + assert!(is_valid_range_quantifier(&"3\\}".chars())); + assert!(is_valid_range_quantifier(&"3,\\}".chars())); + assert!(is_valid_range_quantifier(&",6\\}".chars())); + assert!(is_valid_range_quantifier(&"3,6\\}".chars())); + assert!(is_valid_range_quantifier(&",\\}".chars())); + assert!(is_valid_range_quantifier(&"3,6\\}anything".chars())); + assert!(!is_valid_range_quantifier(&"\\{3,6\\}".chars())); + assert!(!is_valid_range_quantifier(&"\\}".chars())); + assert!(!is_valid_range_quantifier(&"".chars())); + assert!(!is_valid_range_quantifier(&"3".chars())); + assert!(!is_valid_range_quantifier(&"3,".chars())); + assert!(!is_valid_range_quantifier(&",6".chars())); + assert!(!is_valid_range_quantifier(&"3,6".chars())); + assert!(!is_valid_range_quantifier(&",".chars())); + } }