wmbusmeters/test.sh

263 wiersze
5.7 KiB
Bash
Czysty Zwykły widok Historia

#!/bin/sh
PROG="$1"
TESTINTERNAL=$(dirname $PROG)/testinternals
2020-09-18 19:37:59 +00:00
if [ ! -x $PROG ]
then
echo No such executable \"$PROG\"
exit 1
fi
if ! command -v jq > /dev/null
then
2024-04-08 15:02:35 +00:00
echo "You have to install jq! Try: sudo apt install jq"
exit 1
fi
$TESTINTERNAL
if [ "$?" = "0" ]; then
2019-11-03 21:00:18 +00:00
echo OK: test internals
fi
2019-11-03 21:00:18 +00:00
RC="0"
2019-02-23 17:30:16 +00:00
tests/test_c1_meters.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
2019-02-23 17:30:16 +00:00
tests/test_t1_meters.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
2021-01-26 16:17:29 +00:00
tests/test_s1_meters.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2023-11-06 20:04:40 +00:00
tests/test_non_existant_driver.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2022-01-13 09:39:44 +00:00
tests/test_mbus.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_libmbus_secondary_address.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_anyid.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_list_envs.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2022-01-06 17:28:22 +00:00
#tests/test_unknown.sh $PROG
#if [ "$?" != "0" ]; then RC="1"; fi
2020-09-04 09:31:49 +00:00
2020-02-18 06:41:31 +00:00
tests/test_apas.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_izars.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2020-01-23 11:59:22 +00:00
tests/test_aes.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_key_warnings.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2019-02-23 17:30:16 +00:00
tests/test_shell.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_shell2.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_shell_env.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2019-02-23 17:30:16 +00:00
tests/test_meterfiles.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
2019-02-23 20:21:17 +00:00
tests/test_config1.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
2019-02-24 14:20:55 +00:00
tests/test_logfile.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
2019-04-04 06:36:22 +00:00
tests/test_elements.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
2019-02-28 15:53:09 +00:00
tests/test_listen_to_all.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_driver_detection.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_multiple_ids.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_conversions.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2019-11-03 21:00:18 +00:00
2022-12-12 16:41:22 +00:00
tests/test_calculate.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2022-11-01 20:15:28 +00:00
tests/test_formulas.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_formula_errors.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_calculate_dates.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2020-05-09 21:43:30 +00:00
tests/test_fields.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_oneshot.sh $PROG broken test
if [ "$?" != "0" ]; then RC="1"; fi
2019-11-03 21:00:18 +00:00
2019-05-04 20:01:38 +00:00
tests/test_wrongkeys.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
2019-05-04 20:39:45 +00:00
tests/test_config4.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_linkmodes.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
2022-09-21 15:48:19 +00:00
tests/test_cmdline.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_additional_json.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
2024-03-03 11:57:40 +00:00
tests/test_addresses.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_address_filtering.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_address_dll.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2024-03-03 11:57:40 +00:00
tests/test_identity_mode.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_rtlwmbus.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2019-11-03 21:00:18 +00:00
2019-11-03 15:31:30 +00:00
tests/test_stdin_and_file.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
2019-11-03 15:31:30 +00:00
tests/test_serial_bads.sh $PROG
2019-11-03 21:00:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
2020-10-25 19:57:25 +00:00
tests/test_ignore_duplicates.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_match_dll_and_tpl_id.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_unix_timestamp.sh $PROG
if [ "$?" != "0" ]; then
# This can spuriously fail if it crosses a second change...
# Lets try again.
./tests/test_unix_timestamp.sh $PROG
if [ "$?" != "0" ]; then
RC="1";
fi
fi
2021-03-13 08:08:17 +00:00
./tests/test_log_timestamps.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_meter_extras.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_hex_cmdline.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_removing_dll_crcs.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_broken.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_rtlwmbus_crc_errors.sh $PROG
2023-01-02 14:28:18 +00:00
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_rtlwmbus_timestamps.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
if [ -s build/xmq ]
then
./build/xmq tests/generated_tests.xmq for-each /test --shell='./tests/testit.sh '$PROG' "${args}" "${telegram}" "${json}" "${fields}"'
else
echo "Skipping tests/generated_tests.xmq since xmq is missing."
fi
2024-02-11 22:06:59 +00:00
2022-01-06 17:28:22 +00:00
./tests/test_drivers.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2022-02-06 17:49:55 +00:00
./tests/test_analyze.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2022-01-06 17:28:22 +00:00
2023-10-13 14:30:29 +00:00
./tests/test_loadable_drivers.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_bad_driver.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_metershell_env.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_metershell.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_metershell2.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2021-01-30 21:35:59 +00:00
if [ -x ../additional_tests.sh ]
then
(cd ..; ./additional_tests.sh $PROG)
2021-01-30 21:35:59 +00:00
fi
# Only run the netcat tests if netcat is installed.
if command -v nc > /dev/null 2> /dev/null
then
IS_NC_OPENBSD=$(nc -help 2>&1 | grep -o OpenBSD)
# These tests only work with netcat-openbsd.
if [ "$IS_NC_OPENBSD" = "OpenBSD" ]
then
./tests/test_nc1.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_nc2.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
./tests/test_nc3.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
fi
fi
echo Slower tests...
tests/test_pipe.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2022-02-05 17:11:34 +00:00
tests/test_config_oneshot_exitafter.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
tests/test_config_overrides.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
2020-09-18 18:05:59 +00:00
if [ "$(uname)" = "Linux" ]
then
tests/test_alarm.sh $PROG
if [ "$?" != "0" ]; then RC="1"; fi
fi
2020-08-01 19:56:46 +00:00
if [ "$RC" = "0" ]
then
echo "All tests ok!"
else
echo "Some tests failed!"
fi
2019-11-03 21:00:18 +00:00
exit $RC