mirror of
https://github.com/RGBCube/uutils-coreutils
synced 2025-07-28 03:27:44 +00:00
expr: Add tests for regex range quantifiers
This commit is contained in:
parent
7789ef46a4
commit
bbc912eb75
1 changed files with 68 additions and 0 deletions
|
@ -406,6 +406,74 @@ fn test_regex_dollar() {
|
|||
.stdout_only("0\n");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_regex_range_quantifier() {
|
||||
new_ucmd!()
|
||||
.args(&["a", ":", "a\\{1\\}"])
|
||||
.succeeds()
|
||||
.stdout_only("1\n");
|
||||
new_ucmd!()
|
||||
.args(&["aaaaaaaaaa", ":", "a\\{1,\\}"])
|
||||
.succeeds()
|
||||
.stdout_only("10\n");
|
||||
new_ucmd!()
|
||||
.args(&["aaa", ":", "a\\{,3\\}"])
|
||||
.succeeds()
|
||||
.stdout_only("3\n");
|
||||
new_ucmd!()
|
||||
.args(&["aa", ":", "a\\{1,3\\}"])
|
||||
.succeeds()
|
||||
.stdout_only("2\n");
|
||||
new_ucmd!()
|
||||
.args(&["aaaa", ":", "a\\{,\\}"])
|
||||
.succeeds()
|
||||
.stdout_only("4\n");
|
||||
new_ucmd!()
|
||||
.args(&["a", ":", "ab\\{,3\\}"])
|
||||
.succeeds()
|
||||
.stdout_only("1\n");
|
||||
new_ucmd!()
|
||||
.args(&["abbb", ":", "ab\\{,3\\}"])
|
||||
.succeeds()
|
||||
.stdout_only("4\n");
|
||||
new_ucmd!()
|
||||
.args(&["abcabc", ":", "\\(abc\\)\\{,\\}"])
|
||||
.succeeds()
|
||||
.stdout_only("abc\n");
|
||||
new_ucmd!()
|
||||
.args(&["a", ":", "a\\{,6\\}"])
|
||||
.succeeds()
|
||||
.stdout_only("1\n");
|
||||
new_ucmd!()
|
||||
.args(&["{abc}", ":", "\\{abc\\}"])
|
||||
.succeeds()
|
||||
.stdout_only("5\n");
|
||||
new_ucmd!()
|
||||
.args(&["a{bc}", ":", "a\\(\\{bc\\}\\)"])
|
||||
.succeeds()
|
||||
.stdout_only("{bc}\n");
|
||||
new_ucmd!()
|
||||
.args(&["{b}", ":", "a\\|\\{b\\}"])
|
||||
.succeeds()
|
||||
.stdout_only("3\n");
|
||||
new_ucmd!()
|
||||
.args(&["{", ":", "a\\|\\{"])
|
||||
.succeeds()
|
||||
.stdout_only("1\n");
|
||||
new_ucmd!()
|
||||
.args(&["{}}}", ":", "\\{\\}\\}\\}"])
|
||||
.succeeds()
|
||||
.stdout_only("4\n");
|
||||
new_ucmd!()
|
||||
.args(&["a{}}}", ":", "a\\{\\}\\}\\}"])
|
||||
.fails()
|
||||
.stderr_only("expr: Invalid content of \\{\\}\n");
|
||||
new_ucmd!()
|
||||
.args(&["ab", ":", "ab\\{\\}"])
|
||||
.fails()
|
||||
.stderr_only("expr: Invalid content of \\{\\}\n");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_substr() {
|
||||
new_ucmd!()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue