aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJake Hunsaker <jhunsake@redhat.com>2020-12-02 13:49:03 -0500
committerJake Hunsaker <jhunsake@redhat.com>2020-12-11 11:09:06 -0500
commitbc237190e7a7ce4d47d6b1f4a75b2d96b34a19f8 (patch)
treeec03902cc0594b552febdd316786e737b1fe5555
parentb548ac15c56b6c9efe82743a6c51333e1d56a58d (diff)
downloadsos-bc237190e7a7ce4d47d6b1f4a75b2d96b34a19f8.tar.gz
[tests] Add test for newly loaded kernel modules
Adds a test to `simple.sh` to check if we loaded any new kernel modules during a normal exeuction. This test will be somewhat limited in the fact that this currently only tests the plugins that are loaded by default on each tested distribution. Also included is a minor typo fix for reporting where IP addresses were not obfuscated, if any. This typo did not affect the actual test however. Resolves: #2326 Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
-rwxr-xr-xtests/simple.sh12
1 files changed, 10 insertions, 2 deletions
diff --git a/tests/simple.sh b/tests/simple.sh
index 73436014..f1d530dc 100755
--- a/tests/simple.sh
+++ b/tests/simple.sh
@@ -1,3 +1,4 @@
+#!/bin/bash
# This file is part of the sos project: https://github.com/sosreport/sos
#
# This copyrighted material is made available to anyone wishing to use,
@@ -5,7 +6,6 @@
# version 2 of the GNU General Public License.
#
# See the LICENSE file in the source distribution for further information.
-#/bin/bash
# A quick port of the travis tests to bash, requires root
# TODO
# * look into using a framework..
@@ -101,6 +101,8 @@ add_failure () {
# Test a no frills run with verbosity and make sure the expected items exist
test_normal_report () {
cmd="-vvv"
+ # get a list of initial kmods loaded
+ kmods=( $(lsmod | cut -f1 -d ' ' | sort) )
run_expecting_success "$cmd" extract
if [ $? -eq 0 ]; then
if [ ! -f /var/tmp/sosreport_test/sos_reports/sos.html ]; then
@@ -115,6 +117,12 @@ test_normal_report () {
if [ ! "$(grep "DEBUG" /var/tmp/sosreport_test/sos_logs/sos.log)" ]; then
add_failure "did not find debug logging when using -vvv"
fi
+ # new list, see if we added any
+ new_kmods=( $(lsmod | cut -f1 -d ' ' | sort) )
+ if [ "$(printf '%s\n' "${kmods[@]}" "${new_kmods[@]}" | sort | uniq -u)" ]; then
+ add_failure "new kernel modules loaded during execution"
+ echo "$(printf '%s\n' "${kmods[@]}" "${new_kmods[@]}" | sort | uniq -u)"
+ fi
update_failures
update_summary "$cmd"
fi
@@ -163,7 +171,7 @@ test_mask () {
ip_addr=$(ip route show default | awk '/default/ {print $3}')
if [ "$(grep -rI $ip_addr /var/tmp/sosreport_test/*)" ]; then
add_failure "IP address not obfuscated in all places"
- echo "$grep -rI $ip_addr /var/tmp/sosreport/_test/*)"
+ echo "$(grep -rI $ip_addr /var/tmp/sosreport/_test/*)"
fi
update_failures
fi