summaryrefslogtreecommitdiff
path: root/testsuite
diff options
context:
space:
mode:
authorDenys Vlasenko2012-06-04 14:44:47 +0200
committerDenys Vlasenko2012-06-04 14:44:47 +0200
commit21f6fbf545e7fa58f0eaa444001a9d25bc37c4eb (patch)
tree17be754928b225ce5412faf1cbe613189fee14cd /testsuite
parent21f620f6e5f72c4cbecfecaf63a901c33911c00c (diff)
downloadbusybox-21f6fbf545e7fa58f0eaa444001a9d25bc37c4eb.zip
busybox-21f6fbf545e7fa58f0eaa444001a9d25bc37c4eb.tar.gz
sed: fix zero chars match/replace
function old new delta process_files 2099 2181 +82 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'testsuite')
-rwxr-xr-xtestsuite/sed.tests10
1 files changed, 8 insertions, 2 deletions
diff --git a/testsuite/sed.tests b/testsuite/sed.tests
index 9fa8e19..375beb5 100755
--- a/testsuite/sed.tests
+++ b/testsuite/sed.tests
@@ -52,10 +52,8 @@ testing "sed with empty match" "sed 's/z*//g'" "string\n" "" "string\n"
testing "sed s//p" "sed -e s/foo/bar/p -e s/bar/baz/p" "bar\nbaz\nbaz\n" \
"" "foo\n"
testing "sed -n s//p" "sed -ne s/abc/def/p" "def\n" "" "abc\n"
-test x"$SKIP_KNOWN_BUGS" = x"" && {
testing "sed s//g (exhaustive)" "sed -e 's/[[:space:]]*/,/g'" ",1,2,3,4,5,\n" \
"" "12345\n"
-}
testing "sed s arbitrary delimiter" "sed -e 's woo boing '" "boing\n" "" "woo\n"
testing "sed s chains" "sed -e s/foo/bar/ -e s/bar/baz/" "baz\n" "" "foo\n"
testing "sed s chains2" "sed -e s/foo/bar/ -e s/baz/nee/" "bar\n" "" "foo\n"
@@ -296,6 +294,14 @@ testing "sed -i finishes ranges correctly" \
"sed '1,2d' -i input; echo \$?; cat input" \
"0\n3\n4\n" "1\n2\n3\n4\n" ""
+testing "sed zero chars match/replace advances correctly 1" \
+ "sed 's/l*/@/g'" \
+ "@h@e@o@\n" "" "helllo\n"
+
+testing "sed zero chars match/replace advances correctly 2" \
+ "sed 's [^ .]* x g'" \
+ "x x.x\n" "" " a.b\n"
+
# testing "description" "commands" "result" "infile" "stdin"
exit $FAILCOUNT