RunTest.in revision 4d553781254e46f1dfc8d86b79667a74fb8a3eb5
203N/A#! /bin/sh
203N/A
203N/A# This file is generated by configure from RunTest.in. Make any changes
203N/A# to that file.
203N/A
203N/A# Run PCRE tests
203N/A
203N/Acf=diff
203N/Atestdata=@top_srcdir@/testdata
203N/A
203N/A# Select which tests to run; if no selection, run all
203N/A
203N/Ado1=no
203N/Ado2=no
203N/Ado3=no
203N/Ado4=no
203N/Ado5=no
203N/Ado6=no
203N/A
203N/Awhile [ $# -gt 0 ] ; do
3996N/A case $1 in
203N/A 1) do1=yes;;
203N/A 2) do2=yes;;
203N/A 3) do3=yes;;
203N/A 4) do4=yes;;
203N/A 5) do5=yes;;
618N/A 6) do6=yes;;
203N/A *) echo "Unknown test number $1"; exit 1;;
203N/A esac
844N/A shift
844N/Adone
203N/A
1273N/Aif [ "@LINK_SIZE@" != "" -a "@LINK_SIZE@" != "-DLINK_SIZE=2" ] ; then
203N/A if [ $do2 = yes ] ; then
3661N/A echo "Can't run test 2 with an internal link size other than 2"
3661N/A exit 1
278N/A fi
278N/A if [ $do5 = yes ] ; then
3996N/A echo "Can't run test 5 with an internal link size other than 2"
3996N/A exit 1
3996N/A fi
203N/A if [ $do6 = yes ] ; then
203N/A echo "Can't run test 6 with an internal link size other than 2"
203N/A exit 1
206N/A fi
203N/Afi
203N/A
203N/Aif [ "@UTF8@" = "" ] ; then
203N/A if [ $do4 = yes ] ; then
203N/A echo "Can't run test 4 because UTF-8 support is not configured"
203N/A exit 1
203N/A fi
203N/A if [ $do5 = yes ] ; then
203N/A echo "Can't run test 5 because UTF-8 support is not configured"
206N/A exit 1
206N/A fi
203N/A if [ $do6 = yes ] ; then
203N/A echo "Can't run test 6 because UTF-8 support is not configured"
203N/A exit 1
203N/A fi
203N/Afi
203N/A
203N/Aif [ "@UCP@" = "" ] ; then
203N/A if [ $do6 = yes ] ; then
203N/A echo "Can't run test 6 because Unicode property support is not configured"
203N/A exit 1
203N/A fi
203N/Afi
203N/A
267N/Aif [ $do1 = no -a $do2 = no -a $do3 = no -a $do4 = no -a \
203N/A $do5 = no -a $do6 = no ] ; then
203N/A do1=yes
203N/A do2=yes
203N/A do3=yes
813N/A if [ "@UTF8@" != "" ] ; then do4=yes; fi
206N/A if [ "@UTF8@" != "" ] ; then do5=yes; fi
203N/A if [ "@UTF8@" != "" -a "@UCP@" != "" ] ; then do6=yes; fi
203N/Afi
203N/A
203N/A# Show which release
203N/A
203N/A./pcretest /dev/null
203N/A
203N/A# Primary test, Perl-compatible
203N/A
203N/Aif [ $do1 = yes ] ; then
4234N/A echo "Test 1: main functionality (Perl compatible)"
3996N/A ./pcretest $testdata/testinput1 testtry
3996N/A if [ $? = 0 ] ; then
3996N/A $cf testtry $testdata/testoutput1
if [ $? != 0 ] ; then exit 1; fi
echo " "
else exit 1
fi
fi
# PCRE tests that are not Perl-compatible - API & error tests, mostly
if [ $do2 = yes ] ; then
if [ "@LINK_SIZE@" = "" -o "@LINK_SIZE@" = "-DLINK_SIZE=2" ] ; then
echo "Test 2: API and error handling (not Perl compatible)"
./pcretest -i $testdata/testinput2 testtry
if [ $? = 0 ] ; then
$cf testtry $testdata/testoutput2
if [ $? != 0 ] ; then exit 1; fi
else exit 1
fi
else
echo Test 2 skipped for link size other than 2 \(@LINK_SIZE@\)
fi
fi
if [ $do1 = yes -a $do2 = yes ] ; then
echo " "
echo "The two main tests ran OK"
echo " "
fi
# Locale-specific tests, provided the "fr_FR" locale is available
if [ $do3 = yes ] ; then
locale -a | grep '^fr_FR$' >/dev/null
if [ $? -eq 0 ] ; then
echo "Test 3: locale-specific features (using 'fr_FR' locale)"
./pcretest $testdata/testinput3 testtry
if [ $? = 0 ] ; then
$cf testtry $testdata/testoutput3
if [ $? != 0 ] ; then
echo " "
echo "Locale test did not run entirely successfully."
echo "This usually means that there is a problem with the locale"
echo "settings rather than a bug in PCRE."
else
echo "Locale test ran OK"
fi
echo " "
else exit 1
fi
else
echo "Cannot test locale-specific features - 'fr_FR' locale not found,"
echo "or the \"locale\" command is not available to check for it."
echo " "
fi
fi
# Additional tests for UTF8 support
if [ $do4 = yes ] ; then
echo "Test 4: UTF-8 support (Perl compatible)"
./pcretest $testdata/testinput4 testtry
if [ $? = 0 ] ; then
$cf testtry $testdata/testoutput4
if [ $? != 0 ] ; then exit 1; fi
else exit 1
fi
echo "UTF8 test ran OK"
echo " "
fi
if [ $do5 = yes ] ; then
if [ "@LINK_SIZE@" = "" -o "@LINK_SIZE@" = "-DLINK_SIZE=2" ] ; then
echo "Test 5: API and internals for UTF-8 support (not Perl compatible)"
./pcretest $testdata/testinput5 testtry
if [ $? = 0 ] ; then
$cf testtry $testdata/testoutput5
if [ $? != 0 ] ; then exit 1; fi
else exit 1
fi
echo "UTF8 internals test ran OK"
echo " "
else
echo Test 5 skipped for link size other than 2 \(@LINK_SIZE@\)
fi
fi
if [ $do6 = yes ] ; then
if [ "@LINK_SIZE@" = "" -o "@LINK_SIZE@" = "-DLINK_SIZE=2" ] ; then
echo "Test 6: Unicode property support"
./pcretest $testdata/testinput6 testtry
if [ $? = 0 ] ; then
$cf testtry $testdata/testoutput6
if [ $? != 0 ] ; then exit 1; fi
else exit 1
fi
echo "Unicode properties test ran OK"
echo " "
else
echo Test 6 skipped for link size other than 2 \(@LINK_SIZE@\)
fi
fi
# End