From: Thomas Weißschuh Date: Sat, 20 Jan 2024 12:10:01 +0000 (+0100) Subject: Documentation: add basic smoketest for boilerplate.c X-Git-Tag: v2.40-rc1~20^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=48afece8f77c2b8f2f41e4725f1db8a718f71e26;p=thirdparty%2Futil-linux.git Documentation: add basic smoketest for boilerplate.c Signed-off-by: Thomas Weißschuh --- diff --git a/Documentation/Makemodule.am b/Documentation/Makemodule.am new file mode 100644 index 0000000000..0089a41b79 --- /dev/null +++ b/Documentation/Makemodule.am @@ -0,0 +1,4 @@ +check_PROGRAMS += test_boilerplate +test_boilerplate_SOURCES = Documentation/boilerplate.c +test_boilerplate_LDADD = $(LDADD) +test_boilerplate_CFLAGS = $(AM_CFLAGS) diff --git a/Makefile.am b/Makefile.am index 796e82fabd..2986006933 100644 --- a/Makefile.am +++ b/Makefile.am @@ -122,6 +122,7 @@ include pam_lastlog2/Makemodule.am include bash-completion/Makemodule.am include man-common/Makemodule.am +include Documentation/Makemodule.am include tests/Makemodule.am # Meson files diff --git a/meson.build b/meson.build index a68a422ebc..e2973f8b0e 100644 --- a/meson.build +++ b/meson.build @@ -3572,6 +3572,15 @@ if not is_disabler(exe) exes += exe endif +exe = executable( + 'test_boilerplate', + 'Documentation/boilerplate.c', + include_directories : includes, + build_by_default: program_tests) +if not is_disabler(exe) + exes += exe +endif + ############################################################ # Let the test runner know whether we're running under asan and export diff --git a/tests/commands.sh b/tests/commands.sh index 6699f3d252..cb8013ef4c 100644 --- a/tests/commands.sh +++ b/tests/commands.sh @@ -2,6 +2,7 @@ TS_TESTUSER=${TS_TESTUSER:-"nobody"} # helpers +TS_HELPER_BOILERPLATE="${ts_helpersdir}test_boilerplate" TS_HELPER_BYTESWAP="${ts_helpersdir}test_byteswap" TS_HELPER_CPUSET="${ts_helpersdir}test_cpuset" TS_HELPER_CAP="${ts_helpersdir}test_cap" diff --git a/tests/expected/misc/boilerplate-exec b/tests/expected/misc/boilerplate-exec new file mode 100644 index 0000000000..324da677b2 --- /dev/null +++ b/tests/expected/misc/boilerplate-exec @@ -0,0 +1 @@ +ret=0 diff --git a/tests/expected/misc/boilerplate-help b/tests/expected/misc/boilerplate-help new file mode 100644 index 0000000000..549400dcf6 --- /dev/null +++ b/tests/expected/misc/boilerplate-help @@ -0,0 +1,24 @@ + +Usage: + test_boilerplate [options] file... + +Short program description. + +Options: + -n, --no-argument option does not use argument + --optional[=] option argument is optional + -r, --required option requires an argument + -z no long option + --xyzzy a long option only + -e, --extremely-long-long-option + use next line for description when needed + -l, --long-explanation an example of very verbose, and chatty option + description on two, or multiple lines, where the + consecutive lines are intended by two spaces + -f, --foobar next option description resets indent + + -h, --help display this help + -V, --version display version + +For more details see fixme-command-name(1). +ret=0 diff --git a/tests/ts/misc/boilerplate b/tests/ts/misc/boilerplate new file mode 100755 index 0000000000..d795ec21e0 --- /dev/null +++ b/tests/ts/misc/boilerplate @@ -0,0 +1,39 @@ +#!/bin/bash + +# Copyright (C) 2023 Thomas Weißschuh +# +# This file is part of util-linux. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This file is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +TS_TOPDIR="${0%/*}/../.." +TS_DESC="Documentation/boilerplate" + +. "$TS_TOPDIR"/functions.sh +ts_init "$*" + +ts_check_test_command "$TS_HELPER_BOILERPLATE" + +ts_init_subtest exec + +"$TS_HELPER_BOILERPLATE" >> "$TS_OUTPUT" 2>> "$TS_ERRLOG" +echo "ret=$?" >> "$TS_OUTPUT" + +ts_finalize_subtest + +ts_init_subtest help + +"$TS_HELPER_BOILERPLATE" --help >> "$TS_OUTPUT" 2>> "$TS_ERRLOG" +echo "ret=$?" >> "$TS_OUTPUT" + +ts_finalize_subtest + +ts_finalize