Compare commits
2 commits
3dc0ad8ccf
...
a169ebd579
Author | SHA1 | Date | |
---|---|---|---|
|
a169ebd579 | ||
b663651c76 |
1 changed files with 25 additions and 26 deletions
51
test.sh
51
test.sh
|
@ -5,38 +5,37 @@ set -e
|
|||
echo "PWD: $PWD"
|
||||
ls -l
|
||||
ls -l target
|
||||
SKIP="./target/debug/skip"
|
||||
SKIP="./target/skip"
|
||||
DIFF="diff -u --color"
|
||||
|
||||
if test ! -x $SKIP; then
|
||||
echo "File missing: $SKIP - try 'cargo build'"
|
||||
exit 1
|
||||
if test ! -x $SKIP ; then
|
||||
echo "File missing: $SKIP - try 'cargo build'"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "> skip a line when reading from stdin"
|
||||
INPUT=$(
|
||||
cat <<EOF
|
||||
INPUT=$(cat<<EOF
|
||||
line 1
|
||||
line 2
|
||||
EOF
|
||||
)
|
||||
echo "line 2" >test.expect
|
||||
echo "$INPUT" | $SKIP 1 >test.out
|
||||
echo "line 2" > test.expect
|
||||
echo "$INPUT" | $SKIP 1 > test.out
|
||||
$DIFF test.expect test.out
|
||||
rm test.expect test.out
|
||||
|
||||
echo "> skip a line when reading from a file"
|
||||
cat <<EOF >test.in
|
||||
cat<<EOF > test.in
|
||||
line 1
|
||||
line 2
|
||||
EOF
|
||||
echo "line 2" >test.expect
|
||||
$SKIP 1 test.in >test.out
|
||||
echo "line 2" > test.expect
|
||||
$SKIP 1 test.in > test.out
|
||||
$DIFF test.expect test.out
|
||||
rm test.expect test.out
|
||||
|
||||
echo "> skip until 2 matching lines seen"
|
||||
cat <<EOF >test.in
|
||||
cat<<EOF > test.in
|
||||
alpha
|
||||
beta
|
||||
alpha
|
||||
|
@ -44,17 +43,17 @@ alpha
|
|||
gamma
|
||||
alpha
|
||||
EOF
|
||||
cat <<EOF >test.expect
|
||||
cat<<EOF > test.expect
|
||||
alpha
|
||||
gamma
|
||||
alpha
|
||||
EOF
|
||||
$SKIP 2 test.in --line alpha >test.out
|
||||
$SKIP 2 test.in --line alpha > test.out
|
||||
$DIFF test.expect test.out
|
||||
rm test.in test.expect test.out
|
||||
|
||||
echo "> skip lines until 2 tokens seen"
|
||||
cat <<EOF >test.in
|
||||
cat<<EOF > test.in
|
||||
Lorem ipsum dolor sit amet,
|
||||
consectetur adipiscing elit,
|
||||
sed do eiusmod tempor incididunt
|
||||
|
@ -64,18 +63,18 @@ quis nostrud exercitation ullamco
|
|||
laboris nisi ut aliquip ex ea
|
||||
commodo consequat.
|
||||
EOF
|
||||
cat <<EOF >test.expect
|
||||
cat<<EOF > test.expect
|
||||
Ut enim ad minim veniam,
|
||||
quis nostrud exercitation ullamco
|
||||
laboris nisi ut aliquip ex ea
|
||||
commodo consequat.
|
||||
EOF
|
||||
$SKIP 2 test.in --token dolor >test.out
|
||||
$SKIP 2 test.in --token dolor > test.out
|
||||
$DIFF test.expect test.out
|
||||
rm test.in test.expect test.out
|
||||
|
||||
echo "> handle unknown parameter with simple error message"
|
||||
cat <<EOF >test.expect.err
|
||||
cat<<EOF > test.expect.err
|
||||
error: unexpected argument '--foo' found
|
||||
|
||||
tip: to pass '--foo' as a value, use '-- --foo'
|
||||
|
@ -84,17 +83,17 @@ Usage: skip [OPTIONS] <LINES> [FILE]
|
|||
|
||||
For more information, try '--help'.
|
||||
EOF
|
||||
cat <<EOF >test.expect
|
||||
cat<<EOF > test.expect
|
||||
EOF
|
||||
touch test.out test.err
|
||||
$SKIP --foo >test.out 2>test.err || true
|
||||
$SKIP --foo > test.out 2> test.err || true
|
||||
$DIFF test.expect test.out
|
||||
$DIFF test.expect.err test.err
|
||||
rm test.expect test.out
|
||||
rm test.expect.err test.err
|
||||
|
||||
echo "> handle ignore-extra when token is missing"
|
||||
cat <<EOF >test.expect.err
|
||||
cat<<EOF > test.expect.err
|
||||
error: the following required arguments were not provided:
|
||||
--token <TOKEN>
|
||||
<LINES>
|
||||
|
@ -103,17 +102,17 @@ Usage: skip --ignore-extras --token <TOKEN> <LINES> [FILE]
|
|||
|
||||
For more information, try '--help'.
|
||||
EOF
|
||||
cat <<EOF >test.expect
|
||||
cat<<EOF > test.expect
|
||||
EOF
|
||||
touch test.out test.err
|
||||
$SKIP --ignore-extras >test.out 2>test.err || true
|
||||
$SKIP --ignore-extras > test.out 2> test.err || true
|
||||
$DIFF test.expect test.out
|
||||
$DIFF test.expect.err test.err
|
||||
rm test.expect test.out
|
||||
rm test.expect.err test.err
|
||||
|
||||
echo "> skip lines until 4 tokens seen - ignored extra tokens on same line"
|
||||
cat <<EOF >test.in
|
||||
cat<<EOF > test.in
|
||||
Lorem ipsum dolor sit amet,
|
||||
consectetur adipiscing elit,
|
||||
sed do eiusmod tempor incididunt
|
||||
|
@ -123,12 +122,12 @@ quis nostrud exercitation ullamco
|
|||
laboris nisi ut aliquip ex ea
|
||||
commodo consequat.
|
||||
EOF
|
||||
cat <<EOF >test.expect
|
||||
cat<<EOF > test.expect
|
||||
quis nostrud exercitation ullamco
|
||||
laboris nisi ut aliquip ex ea
|
||||
commodo consequat.
|
||||
EOF
|
||||
$SKIP 4 test.in --token m --ignore-extras >test.out
|
||||
$SKIP 4 test.in --token m --ignore-extras > test.out
|
||||
$DIFF test.expect test.out
|
||||
rm test.in test.expect test.out
|
||||
|
||||
|
|
Loading…
Reference in a new issue