Message ID | e9cefa11-7c22-ce0c-7649-55d5f6b84c0b@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
diff --git a/tests/xfs/293 b/tests/xfs/293 index ade6015..df44e98 100755 --- a/tests/xfs/293 +++ b/tests/xfs/293 @@ -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
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> --- V2: reduce cat assignment derp use _require_command instead of hand-rolling it V3: all the gzips. -- To unsubscribe from this list: send the line "unsubscribe fstests" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html