mirror of
https://github.com/openwrt/packages.git
synced 2026-05-31 15:02:01 +08:00
6d7f1f2446
The RTKLIB command-line tools (convbin, pos2kml, rnx2rtkp, rtkrcv, str2str) don't accept a --version flag; passing any unrecognized option triggers printhelp()/printusage() which only emits a synopsis block. The generic CI version probe therefore can't find PKG_VERSION and marks the package as missing a version match. Add a test-version.sh that exit-0's for all five subpackages to skip the generic version check, and a test.sh that exercises each binary's synopsis output as a basic functional smoke test. Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
34 lines
883 B
Bash
Executable File
34 lines
883 B
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Functional smoke test for the RTKLIB command-line tools.
|
|
#
|
|
# Each tool prints a usage/synopsis block (containing its own name) to stderr
|
|
# when invoked with an unrecognized option, then exits 0. We confirm the
|
|
# binary runs in the target environment and produces the expected synopsis.
|
|
|
|
bin="/usr/bin/$1"
|
|
|
|
case "$1" in
|
|
convbin|pos2kml|rnx2rtkp|rtkrcv|str2str)
|
|
[ -x "$bin" ] || {
|
|
echo "FAIL: $bin not found or not executable"
|
|
exit 1
|
|
}
|
|
|
|
# Any unknown '-' option triggers printhelp()/printusage(); rtkrcv
|
|
# exits 0, the others may exit non-zero — capture both streams and
|
|
# ignore the exit code, then look for the binary name in the output.
|
|
out=$("$bin" -? 2>&1 || true)
|
|
echo "$out" | grep -qF "$1" || {
|
|
echo "FAIL: $1 synopsis did not mention '$1'"
|
|
echo "$out"
|
|
exit 1
|
|
}
|
|
echo "$1: synopsis OK"
|
|
;;
|
|
*)
|
|
echo "Untested package: $1" >&2
|
|
exit 1
|
|
;;
|
|
esac
|