recreate project
This commit is contained in:
+90
@@ -0,0 +1,90 @@
|
||||
#!/bin/bash
|
||||
|
||||
TEST_OK=0
|
||||
TEST_FAIL=0
|
||||
|
||||
function test_end {
|
||||
echo ""
|
||||
echo ""
|
||||
printf "%-40s" "$1 test failures found"
|
||||
if [ $1 -gt 0 ]; then
|
||||
log_fail
|
||||
else
|
||||
log_ok
|
||||
fi
|
||||
return "$1"
|
||||
}
|
||||
|
||||
function test_start {
|
||||
TEST_OK=0
|
||||
TEST_FAIL=0
|
||||
}
|
||||
|
||||
function log_ok {
|
||||
echo -e "[ \033[0;32mPASS\033[0m ]"
|
||||
}
|
||||
|
||||
function log_fail {
|
||||
echo -e "[ \033[0;31mFAIL\033[0m ]"
|
||||
}
|
||||
|
||||
function expect_failure {
|
||||
temp_file=$(mktemp)
|
||||
printf "%-40s" "$1"
|
||||
shift
|
||||
$@ &> log.txt
|
||||
if [ $? -ne 0 ]; then
|
||||
log_ok
|
||||
TEST_OK=$((TEST_OK+1))
|
||||
else
|
||||
log_fail
|
||||
#cat ${temp_file}
|
||||
TEST_FAIL=$((TEST_FAIL+1))
|
||||
fi
|
||||
rm ${temp_file}
|
||||
}
|
||||
|
||||
function expect_success {
|
||||
temp_file=$(mktemp)
|
||||
printf "%-40s" "$1"
|
||||
shift
|
||||
$@ &> ${temp_file}
|
||||
if [ $? -ne 0 ]; then
|
||||
log_fail
|
||||
#cat ${temp_file}
|
||||
TEST_FAIL=$((TEST_FAIL+1))
|
||||
else
|
||||
log_ok
|
||||
TEST_OK=$((TEST_OK+1))
|
||||
fi
|
||||
rm ${temp_file}
|
||||
}
|
||||
|
||||
function test_commands {
|
||||
PNGSUITE="../resources/pngsuite/"
|
||||
for i in $(find $PNGSUITE -type f -name '*.png' | sort | grep -v pngsuite/x); do
|
||||
echo $0 expect_success "$(basename $i)" php read.php "$i"
|
||||
done
|
||||
for i in $(find $PNGSUITE -type f -name '*.png' | sort | grep pngsuite/x); do
|
||||
echo $0 expect_failure "$(basename $i)" php read.php "$i"&
|
||||
done
|
||||
}
|
||||
|
||||
set -u -o pipefail
|
||||
if [ $# -eq 0 ]; then
|
||||
|
||||
mkdir -p out/
|
||||
test_start
|
||||
test_commands | parallel --no-notice
|
||||
test_end $?
|
||||
else
|
||||
subcmd=$1
|
||||
shift
|
||||
test_start
|
||||
if [ $subcmd == "expect_success" ]; then
|
||||
expect_success $@
|
||||
elif [ $subcmd == "expect_failure" ]; then
|
||||
expect_failure $@
|
||||
fi
|
||||
exit $TEST_FAIL
|
||||
fi
|
||||
Reference in New Issue
Block a user