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())); + } }