mirror of
https://github.com/moparisthebest/pacman
synced 2025-03-11 07:31:04 -04:00
convert test scripts to tap output
Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
parent
2e2c614f0e
commit
d3726bbd26
@ -1,14 +1,16 @@
|
||||
#!/bin/bash
|
||||
|
||||
declare -i testcount=0 fail=0 pass=0 total=15
|
||||
|
||||
# source the library function
|
||||
if [[ -z $1 || ! -f $1 ]]; then
|
||||
printf "error: path to human_to_size library not provided or does not exist\n"
|
||||
printf "Bail out! path to human_to_size library not provided or does not exist\n"
|
||||
exit 1
|
||||
fi
|
||||
. "$1"
|
||||
|
||||
if ! type -t human_to_size >/dev/null; then
|
||||
printf 'human_to_size function not found\n'
|
||||
printf 'Bail out! human_to_size function not found\n'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@ -20,27 +22,31 @@ parse_hts() {
|
||||
result=$(human_to_size "$1")
|
||||
if [[ $result = "$expected" ]]; then
|
||||
(( ++pass ))
|
||||
printf "ok %d - %s\n" "$testcount" "$input"
|
||||
else
|
||||
(( ++fail ))
|
||||
printf '[TEST %3s]: FAIL\n' "$testcount"
|
||||
printf ' input: %s\n' "$input"
|
||||
printf ' output: %s\n' "$result"
|
||||
printf ' expected: %s\n' "$expected"
|
||||
printf "not ok %d - %s\n" "$testcount" "$input"
|
||||
printf '# [TEST %3s]: FAIL\n' "$testcount"
|
||||
printf '# input: %s\n' "$input"
|
||||
printf '# output: %s\n' "$result"
|
||||
printf '# expected: %s\n' "$expected"
|
||||
fi
|
||||
}
|
||||
|
||||
summarize() {
|
||||
if (( !fail )); then
|
||||
printf 'All %s tests successful\n\n' "$testcount"
|
||||
printf '# All %s tests successful\n\n' "$testcount"
|
||||
exit 0
|
||||
else
|
||||
printf '%s of %s tests failed\n\n' "$fail" "$testcount"
|
||||
printf '# %s of %s tests failed\n\n' "$fail" "$testcount"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
trap 'summarize' EXIT
|
||||
|
||||
printf 'Beginning human_to_size tests\n'
|
||||
printf '# Beginning human_to_size tests\n'
|
||||
|
||||
echo "1..$total"
|
||||
|
||||
# parse_hts <input> <expected output>
|
||||
|
||||
|
@ -1,16 +1,16 @@
|
||||
#!/bin/bash
|
||||
|
||||
declare -i testcount=0 pass=0 fail=0
|
||||
declare -i testcount=0 pass=0 fail=0 total=25
|
||||
|
||||
# source the library function
|
||||
if [[ -z $1 || ! -f $1 ]]; then
|
||||
printf "error: path to parseopts library not provided or does not exist\n"
|
||||
printf "Bail out! path to parseopts library not provided or does not exist\n"
|
||||
exit 1
|
||||
fi
|
||||
. "$1"
|
||||
|
||||
if ! type -t parseopts >/dev/null; then
|
||||
printf 'parseopts function not found\n'
|
||||
printf 'Bail out! parseopts function not found\n'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@ -36,28 +36,31 @@ test_result() {
|
||||
|
||||
if [[ $result = "$*" ]] && (( tokencount == $# )); then
|
||||
(( ++pass ))
|
||||
printf 'ok %d - %s\n' "$testcount" "$input"
|
||||
else
|
||||
printf '[TEST %3s]: FAIL\n' "$testcount"
|
||||
printf ' input: %s\n' "$input"
|
||||
printf ' output: %s (%s tokens)\n' "$*" "$#"
|
||||
printf ' expected: %s (%s tokens)\n' "$result" "$tokencount"
|
||||
echo
|
||||
printf 'not ok %d - %s\n' "$testcount" "$input"
|
||||
printf '# [TEST %3s]: FAIL\n' "$testcount"
|
||||
printf '# input: %s\n' "$input"
|
||||
printf '# output: %s (%s tokens)\n' "$*" "$#"
|
||||
printf '# expected: %s (%s tokens)\n' "$result" "$tokencount"
|
||||
(( ++fail ))
|
||||
fi
|
||||
}
|
||||
|
||||
summarize() {
|
||||
if (( !fail )); then
|
||||
printf 'All %s tests successful\n\n' "$testcount"
|
||||
printf '# All %s tests successful\n\n' "$testcount"
|
||||
exit 0
|
||||
else
|
||||
printf '%s of %s tests failed\n\n' "$fail" "$testcount"
|
||||
printf '# %s of %s tests failed\n\n' "$fail" "$testcount"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
trap 'summarize' EXIT
|
||||
|
||||
printf 'Beginning parseopts tests\n'
|
||||
printf '# Beginning parseopts tests\n'
|
||||
|
||||
echo "1..$total"
|
||||
|
||||
# usage: parse <expected result> <token count> test-params...
|
||||
# a failed parse will match only the end of options marker '--'
|
||||
|
@ -2,6 +2,7 @@
|
||||
#
|
||||
# pacsorttest - a test suite for pacsort
|
||||
#
|
||||
# Copyright (c) 2013 by Pacman Development Team <pacman-dev@archlinux.org>
|
||||
# Copyright (c) 2011 by Dan McGee <dan@archlinux.org>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
@ -20,32 +21,39 @@
|
||||
# default binary if one was not specified as $1
|
||||
bin='pacsort'
|
||||
# holds counts of tests
|
||||
total=0
|
||||
total=23
|
||||
run=0
|
||||
failure=0
|
||||
|
||||
# args:
|
||||
# runtest input expected test_description optional_opts
|
||||
runtest() {
|
||||
# run the test
|
||||
diff -u <(printf "$1" | $bin $4) <(printf "$2")
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo "FAILURE: $3"
|
||||
((run++))
|
||||
out=$(diff -u <(printf "$1" | $bin $4) <(printf "$2"))
|
||||
if [[ $? -eq 0 ]]; then
|
||||
echo "ok $run - $3"
|
||||
else
|
||||
((failure++))
|
||||
echo "not ok $run - $3"
|
||||
while read line; do
|
||||
echo " # $line"
|
||||
done <<<"$out"
|
||||
fi
|
||||
((total++))
|
||||
}
|
||||
|
||||
# use first arg as our binary if specified
|
||||
[[ -n "$1" ]] && bin="$1"
|
||||
|
||||
if ! type -p "$bin"; then
|
||||
echo "pacsort binary ($bin) could not be located"
|
||||
echo
|
||||
echo "Bail out! pacsort binary ($bin) could not be located"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Running pacsort tests..."
|
||||
|
||||
echo "1..$total"
|
||||
|
||||
# BEGIN TESTS
|
||||
|
||||
in="1\n2\n3\n4\n"
|
||||
@ -113,11 +121,9 @@ runtest "$separator" "$separator_reverse" "really long input, sort key, separato
|
||||
#END TESTS
|
||||
|
||||
if [[ $failure -eq 0 ]]; then
|
||||
echo "All $total tests successful"
|
||||
echo
|
||||
echo "# All $run tests successful"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "$failure of $total tests failed"
|
||||
echo
|
||||
echo "# $failure of $run tests failed"
|
||||
exit 1
|
||||
|
@ -20,22 +20,20 @@
|
||||
# default binary if one was not specified as $1
|
||||
bin='vercmp'
|
||||
# holds counts of tests
|
||||
total=0
|
||||
total=92
|
||||
run=0
|
||||
failure=0
|
||||
|
||||
# args:
|
||||
# pass ver1 ver2 ret expected
|
||||
pass() {
|
||||
#echo "test: ver1: $1 ver2: $2 ret: $3 expected: $4"
|
||||
#echo " --> pass"
|
||||
echo -n
|
||||
echo "ok $run - ver1: $1 ver2: $2 ret: $3"
|
||||
}
|
||||
|
||||
# args:
|
||||
# fail ver1 ver2 ret expected
|
||||
fail() {
|
||||
echo "test: ver1: $1 ver2: $2 ret: $3 expected: $4"
|
||||
echo " ==> FAILURE"
|
||||
echo "not ok $run - test: ver1: $1 ver2: $2 ret: $3 expected: $4"
|
||||
((failure++))
|
||||
}
|
||||
|
||||
@ -43,12 +41,13 @@ fail() {
|
||||
# runtest ver1 ver2 expected
|
||||
runtest() {
|
||||
# run the test
|
||||
((run++))
|
||||
ret=$($bin $1 $2)
|
||||
func='pass'
|
||||
[[ -n $ret && $ret -eq $3 ]] || func='fail'
|
||||
$func $1 $2 $ret $3
|
||||
((total++))
|
||||
# and run its mirror case just to be sure
|
||||
((run++))
|
||||
reverse=0
|
||||
[[ $3 -eq 1 ]] && reverse=-1
|
||||
[[ $3 -eq -1 ]] && reverse=1
|
||||
@ -56,19 +55,19 @@ runtest() {
|
||||
func='pass'
|
||||
[[ -n $ret && $ret -eq $reverse ]] || func='fail'
|
||||
$func $2 $1 $ret $reverse
|
||||
((total++))
|
||||
}
|
||||
|
||||
# use first arg as our binary if specified
|
||||
[[ -n "$1" ]] && bin="$1"
|
||||
|
||||
if ! type -p "$bin"; then
|
||||
echo "vercmp binary ($bin) could not be located"
|
||||
echo
|
||||
echo "Bail out! vercmp binary ($bin) could not be located"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Running vercmp tests..."
|
||||
echo "# Running vercmp tests..."
|
||||
|
||||
echo "1..$total"
|
||||
|
||||
# BEGIN TESTS
|
||||
|
||||
@ -147,11 +146,9 @@ runtest 1:1.1 1.1 1
|
||||
#END TESTS
|
||||
|
||||
if [[ $failure -eq 0 ]]; then
|
||||
echo "All $total tests successful"
|
||||
echo
|
||||
echo "# All $run tests successful"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "$failure of $total tests failed"
|
||||
echo
|
||||
echo "# $failure of $run tests failed"
|
||||
exit 1
|
||||
|
Loading…
x
Reference in New Issue
Block a user