#!/bin/sh

# SUSv3 compliant sed tests.
# Copyright 2005 by Rob Landley <rob@landley.net>
# Licensed under GPL v2, see file LICENSE for details.

. testing.sh

# testing "description" "arguments" "result" "infile" "stdin"

# Corner cases
testing "sed no files (stdin)" 'sed ""' "hello\n" "" "hello\n"
testing "sed explicit stdin" 'sed "" -' "hello\n" "" "hello\n"
testing "sed handles empty lines" "sed -e 's/\$/@/'" "@\n" "" "\n"
testing "sed stdin twice" 'sed "" - -' "hello" "" "hello"

# Trailing EOF.
#	Match $, at end of each file or all files?

# -e corner cases
#	without -e
#	multiple -e
#		interact with a
#	-eee arg1 arg2 arg3
# -f corner cases
#	-e -f -e
# -n corner cases
#	no newline at EOF?
# -r corner cases
#	Just make sure it works.
# -i corner cases:
#	sed -i -
#	permissions
#	-i on a symlink
#	on a directory
#       With $ last-line test
# Continue with \
#       End of script with trailing \

# command list
testing "sed accepts blanks before command" "sed -e '1 d'" "" "" ""
testing "sed accepts newlines in -e" "sed -e 'i\
1
a\
3'" "1\n2\n3\n" "" "2\n"
testing "sed accepts multiple -e" "sed -e 'i\' -e '1' -e 'a\' -e '3'" \
	"1\n2\n3\n" "" "2\n"

# substitutions
testing "sed -n" "sed -n -e s/foo/bar/ -e s/bar/baz/" "" "" "foo\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"
testing "sed s [delimiter]" "sed -e 's@[@]@@'" "onetwo" "" "one@two"
testing "sed s with \\t (GNU ext)" "sed 's/\t/ /'" "one two" "" "one\ttwo"

# branch
testing "sed b (branch)" "sed -e 'b one;p;: one'" "foo\n" "" "foo\n"
testing "sed b (branch with no label jumps to end)" "sed -e 'b;p'" \
	"foo\n" "" "foo\n"

# test and branch
testing "sed t (test/branch)" "sed -e 's/a/1/;t one;p;: one;p'" \
	"1\n1\nb\nb\nb\nc\nc\nc\n" "" "a\nb\nc\n"
testing "sed t (test/branch clears test bit)" "sed -e 's/a/b/;:loop;t loop'" \
	"b\nb\nc\n" "" "a\nb\nc\n"
testing "sed T (!test/branch)" "sed -e 's/a/1/;T notone;p;: notone;p'" \
	"1\n1\n1\nb\nb\nc\nc\n" "" "a\nb\nc\n"

test x"$SKIP_KNOWN_BUGS" = x"" && {
# Normal sed end-of-script doesn't print "c" because n flushed the pattern
# space.  If n hits EOF, pattern space is empty when script ends.
# Query: how does this interact with no newline at EOF?
testing "sed n (flushes pattern space, terminates early)" "sed -e 'n;p'" \
	"a\nb\nb\nc\n" "" "a\nb\nc\n"
# N does _not_ flush pattern space, therefore c is still in there @ script end.
testing "sed N (doesn't flush pattern space when terminating)" "sed -e 'N;p'" \
	"a\nb\na\nb\nc\n" "" "a\nb\nc\n"
}
testing "sed address match newline" 'sed "/b/N;/b\\nc/i woo"' \
	"a\nwoo\nb\nc\nd\n" "" "a\nb\nc\nd\n"

# Multiple lines in pattern space
testing "sed N (stops at end of input) and P (prints to first newline only)" \
	"sed -n 'N;P;p'" "a\na\nb\n" "" "a\nb\nc\n"

# Hold space
testing "sed G (append hold space to pattern space)" 'sed G' "a\n\nb\n\nc\n\n" \
	"" "a\nb\nc\n"
#testing "sed g/G (swap/append hold and patter space)"
#testing "sed g (swap hold/pattern space)"

testing "sed d ends script iteration" \
	"sed -e '/ook/d;s/ook/ping/p;i woot'" "" "" "ook\n"
testing "sed d ends script iteration (2)" \
	"sed -e '/ook/d;a\' -e 'bang'" "woot\nbang\n" "" "ook\nwoot\n"

# Multiple files, with varying newlines and NUL bytes
test x"$SKIP_KNOWN_BUGS" = x"" && {
testing "sed embedded NUL" "sed -e 's/woo/bang/'" "\0bang\0woo\0" "" \
	"\0woo\0woo\0"
}
testing "sed embedded NUL g" "sed -e 's/woo/bang/g'" "bang\0bang\0" "" \
	"woo\0woo\0"
test x"$SKIP_KNOWN_BUGS" = x"" && {
echo -e "/woo/a he\0llo" > sed.commands
testing "sed NUL in command" "sed -f sed.commands" "woo\nhe\0llo\n" "" "woo"
rm sed.commands
}

# sed has funky behavior with newlines at the end of file.  Test lots of
# corner cases with the optional newline appending behavior.

testing "sed normal newlines" "sed -e 's/woo/bang/' input -" "bang\nbang\n" \
	"woo\n" "woo\n"
testing "sed leave off trailing newline" "sed -e 's/woo/bang/' input -" \
	"bang\nbang" "woo\n" "woo"
testing "sed autoinsert newline" "sed -e 's/woo/bang/' input -" "bang\nbang" \
	"woo" "woo"
testing "sed empty file plus cat" "sed -e 's/nohit//' input -" "one\ntwo" \
	"" "one\ntwo"
testing "sed cat plus empty file" "sed -e 's/nohit//' input -" "one\ntwo" \
	"one\ntwo" ""
test x"$SKIP_KNOWN_BUGS" = x"" && {
testing "sed append autoinserts newline" "sed -e '/woot/a woo' -" \
	"woot\nwoo\n" "" "woot"
}
testing "sed insert doesn't autoinsert newline" "sed -e '/woot/i woo' -" \
	"woo\nwoot" "" "woot"
testing "sed print autoinsert newlines" "sed -e 'p' -" "one\none" "" "one"
testing "sed print autoinsert newlines two files" "sed -e 'p' input -" \
	"one\none\ntwo\ntwo" "one" "two"
testing "sed noprint, no match, no newline" "sed -ne 's/woo/bang/' input" \
	"" "no\n" ""
testing "sed selective matches with one nl" "sed -ne 's/woo/bang/p' input -" \
	"a bang\nc bang\n" "a woo\nb no" "c woo\nd no"
testing "sed selective matches insert newline" \
	"sed -ne 's/woo/bang/p' input -" "a bang\nb bang\nd bang" \
	"a woo\nb woo" "c no\nd woo"
testing "sed selective matches noinsert newline" \
	"sed -ne 's/woo/bang/p' input -" "a bang\nb bang" "a woo\nb woo" \
	"c no\nd no"
test x"$SKIP_KNOWN_BUGS" = x"" && {
testing "sed clusternewline" \
	"sed -e '/one/a 111' -e '/two/i 222' -e p input -" \
	"one\none\n111\n222\ntwo\ntwo" "one" "two"
}
testing "sed subst+write" \
	"sed -e 's/i/z/' -e 'woutputw' input -; echo -n X; cat outputw" \
	"thzngy\nagaznXthzngy\nagazn" "thingy" "again"
rm outputw
testing "sed trailing NUL" \
	"sed 's/i/z/' input -" \
	"a\0b\0\nc" "a\0b\0" "c"
testing "sed escaped newline in command" \
	"sed 's/a/z\\
z/' input" \
	"z\nz" "a" ""

# Test end-of-file matching behavior

testing "sed match EOF" "sed -e '"'$p'"'" "hello\nthere\nthere" "" \
	"hello\nthere"
testing "sed match EOF two files" "sed -e '"'$p'"' input -" \
	"one\ntwo\nthree\nfour\nfour" "one\ntwo" "three\nfour"
# sed match EOF inline: gnu sed 4.1.5 outputs this:
#00000000  6f 6e 65 0a 6f 6f 6b 0a  6f 6f 6b 0a 74 77 6f 0a  |one.ook.ook.two.|
#00000010  0a 74 68 72 65 65 0a 6f  6f 6b 0a 6f 6f 6b 0a 66  |.three.ook.ook.f|
#00000020  6f 75 72                                          |our|
# which looks buggy to me.
$ECHO -ne "three\nfour" > input2
testing "sed match EOF inline" \
	"sed -e '"'$i ook'"' -i input input2 && cat input input2" \
	"one\nook\ntwothree\nook\nfour" "one\ntwo" ""
rm input2

# Test lie-to-autoconf

testing "sed lie-to-autoconf" "sed --version | grep -o 'GNU sed version '" \
	"GNU sed version \n" "" ""

# Jump to nonexistent label
test x"$SKIP_KNOWN_BUGS" = x"" && {
# Incompatibility: illegal jump is not detected if input is ""
# (that is, no lines at all). GNU sed 4.1.5 complains even in this case
testing "sed nonexistent label" "sed -e 'b walrus' 2>/dev/null || echo yes" \
	"yes\n" "" ""
}

testing "sed backref from empty s uses range regex" \
	"sed -e '/woot/s//eep \0 eep/'" "eep woot eep" "" "woot"

testing "sed backref from empty s uses range regex with newline" \
	"sed -e '/woot/s//eep \0 eep/'" "eep woot eep\n" "" "woot\n"

# -i with no filename

touch ./-  # Detect gnu failure mode here.
testing "sed -i with no arg [GNUFAIL]" "sed -e '' -i 2> /dev/null || echo yes" \
	"yes\n" "" ""
rm ./-     # Clean up

testing "sed s/xxx/[/" "sed -e 's/xxx/[/'" "[\n" "" "xxx\n"

# Ponder this a bit more, why "woo not found" from gnu version?
#testing "sed doesn't substitute in deleted line" \
#	"sed -e '/ook/d;s/ook//;t woo;a bang;'" "bang" "" "ook\n"

# This makes both seds very unhappy.  Why?
#testing "sed -g (exhaustive)" "sed -e 's/[[:space:]]*/,/g'" ",1,2,3,4,5," \
#	"" "12345"

# testing "description" "arguments" "result" "infile" "stdin"

testing "sed n command must reset 'substituted' bit" \
	"sed 's/1/x/;T;n;: next;s/3/y/;t quit;n;b next;: quit;q'" \
	"0\nx\n2\ny\n" "" "0\n1\n2\n3\n"

testing "sed d does not break n,m matching" \
	"sed -n '1d;1,3p'" \
	"second\nthird\n" "" "first\nsecond\nthird\nfourth\n"

testing "sed d does not break n,regex matching" \
	"sed -n '1d;1,/hir/p'" \
	"second\nthird\n" "" "first\nsecond\nthird\nfourth\n"

testing "sed d does not break n,regex matching #2" \
	"sed -n '1,5d;1,/hir/p'" \
	"second2\nthird2\n" "" \
	"first\nsecond\nthird\nfourth\n""first2\nsecond2\nthird2\nfourth2\n"

testing "sed 2d;2,1p (gnu compat)" \
	"sed -n '2d;2,1p'" \
	"third\n" "" \
	"first\nsecond\nthird\nfourth\n"

# Regex means: "match / at BOL or nothing, then one or more not-slashes".
# The bug was that second slash in /usr/lib was treated as "at BOL" too.
testing "sed beginning (^) matches only once" \
	"sed 's,\(^/\|\)[^/][^/]*,>\0<,g'" \
	">/usr</>lib<\n" "" \
	"/usr/lib\n"

exit $FAILCOUNT
