1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-03-11 20:58:50 +03:00
lvm2/test/shell/000-basic.sh
Zdenek Kabelac 16bc80c389 test: check LVM_SUPPRESS_FD_WARNINGS
Add test for suppression messages about leaked descriptors.
2025-02-26 01:31:49 +01:00

59 lines
1.7 KiB
Bash

#!/usr/bin/env bash
# Copyright (C) 2009-2011 Red Hat, Inc. All rights reserved.
#
# This copyrighted material is made available to anyone wishing to use,
# modify, copy, or redistribute it subject to the terms and conditions
# of the GNU General Public License v.2.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
SKIP_WITH_LVMPOLLD=1
. lib/inittest
lvm version
lvm pvmove --version|sed -n "1s/.*: *\([0-9][^ ]*\) .*/\1/p" | tee version
# check LVM_SUPPRESS_FD_WARNINGS supression works
exec 3< version
lvs 2>err
# without suppression command prints message about leaked descriptor
grep "leaked" err
LVM_SUPPRESS_FD_WARNINGS=1 lvs 2>err
# with suppression there should be no such message
not grep "leaked" err
exec 3<&-
# ensure they are the same
diff -u version lib/version-expected
dmstats version |sed -n "1s/.*: *\([0-9][^ ]*\) .*/\1/p" | tee dmstats-version
# ensure dmstats version matches build
diff -u dmstats-version lib/dm-version-expected
# ensure we can create devices (uses dmsetup, etc)
aux prepare_devs 5
get_devs
# ensure we do not crash on a bug in config file
aux lvmconf 'log/prefix = 1""'
not lvs "${DEVICES[@]}"
# validate testing machine with its services is in expected state and will not interfere with tests
if systemctl -a >out 2>/dev/null ; then
for i in dm-event lvm2-lvmpolld lvm2-monitor ; do
grep $i out > mout || continue
grep -v masked mout || continue
should not echo "Present unmasked $i service/socket may randomize testing results!"
echo "+++++ Stop & Mask with systemctl +++++"
touch show_out
done
test ! -e show_out || cat out
fi