xfs/293: make test more robust

xfs/293 is supposed to make sure every command in xfs_io
is documented, but it was missing the inode command because
it's a common word, and depending on how man formatted the
page, the magic "   inode" string could show up and appear
to indicate that documentation is present for the command
when it's not actually there.

Change the test to inspect the manpage source directly, with
the assumption that each documented command will start
with ^\.B.*$COMMAND on a manpage line.

This handles a few different compressed manpage formats -
I don't know if anybody uses bz2 or xz, but hey.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Reviewed-by: Eryu Guan <eguan@redhat.com>
Signed-off-by: Eryu Guan <eguan@redhat.com>
This commit is contained in:
Eric Sandeen
2017-04-20 10:30:36 -05:00
committed by Eryu Guan
parent 62c42440ee
commit 3501b86c9d
+12 -1
View File
@@ -48,8 +48,19 @@ _supported_os IRIX Linux
echo "Silence is golden"
MANPAGE=`man --path xfs_io`
case "$MANPAGE" in
*.gz|*.z\|*.Z) CAT=zcat;;
*.bz2) CAT=bzcat;;
*.xz) CAT=xzcat;;
*) CAT=cat;;
esac
_require_command `which $CAT` $CAT
for COMMAND in `$XFS_IO_PROG -c help | awk '{print $1}' | grep -v "^Use"`; do
man xfs_io | col -b | grep -wq " $COMMAND" || \
$CAT `man --path xfs_io` | egrep -q "^\.B.*$COMMAND" || \
echo "$COMMAND not documented in the xfs_io manpage"
done