From f6b61a4db3c71ec1531e048401638e689b410920 Mon Sep 17 00:00:00 2001 From: Adam Samalik Date: Thu, 29 Jun 2023 10:09:20 +0200 Subject: [PATCH] re-import sources as agreed with the maintainer --- .gitignore | 16 ++- ksc-1.9.tar.gz | Bin 696320 -> 0 bytes tests/README.md | 78 +++++++++++ tests/sanity/Makefile | 89 +++++++++++++ tests/sanity/README.md | 78 +++++++++++ tests/sanity/_env | 9 ++ tests/sanity/common-symbols.sh | 65 ++++++++++ tests/sanity/common-tests.sh | 148 +++++++++++++++++++++ tests/sanity/runtest.sh | 179 ++++++++++++++++++++++++++ tests/sanity/test-ksc-elf.sh | 176 +++++++++++++++++++++++++ tests/sanity/test-ksc-exec.sh | 30 +++++ tests/sanity/test-ksc-help.sh | 56 ++++++++ tests/sanity/test-ksc-invalid-file.sh | 46 +++++++ tests/sanity/test-ksc-man.sh | 55 ++++++++ tests/tests.yml | 18 +++ 15 files changed, 1042 insertions(+), 1 deletion(-) delete mode 100644 ksc-1.9.tar.gz create mode 100644 tests/README.md create mode 100644 tests/sanity/Makefile create mode 100644 tests/sanity/README.md create mode 100644 tests/sanity/_env create mode 100644 tests/sanity/common-symbols.sh create mode 100644 tests/sanity/common-tests.sh create mode 100755 tests/sanity/runtest.sh create mode 100644 tests/sanity/test-ksc-elf.sh create mode 100644 tests/sanity/test-ksc-exec.sh create mode 100644 tests/sanity/test-ksc-help.sh create mode 100644 tests/sanity/test-ksc-invalid-file.sh create mode 100644 tests/sanity/test-ksc-man.sh create mode 100644 tests/tests.yml diff --git a/.gitignore b/.gitignore index b8ae2d1..99b2a7b 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,15 @@ -SOURCES/ksc-1.9.tar.gz +/ksc-0.9.23.tar.gz +/ksc-0.9.24.tar.gz +/ksc-1.0.tar.gz +/ksc-1.1.tar.gz +/ksc-1.2.tar.gz +/ksc-1.3.tar.gz +/ksc-1.4.tar.gz +/ksc-1.5.tar.gz +/ksc-1.6.tar.gz +/ksc-1.7.tar.gz +/ksc-1.8.tar.gz +/ksc-1.8-2.el8.tar.gz +/ksc-1.8-3.el8.tar.gz +/ksc-1.9-1.el8.tar.gz +/ksc-1.9.tar.gz diff --git a/ksc-1.9.tar.gz b/ksc-1.9.tar.gz deleted file mode 100644 index 9b420657bd2eced874a1b0b28cf67b98dcc9db7d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 696320 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
V3D7`@t4TD_ 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

8)73@=DwAd`QNuso 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 +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2019 Red Hat, Inc. +# +# 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 version 2. +# +# This program 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. +# +# 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. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +TENV=_env +ifeq ($(PKG_TOP_DIR),) + export PKG_TOP_DIR := $(shell p=$$PWD; while :; do \ + [ -e $$p/env.mk -o -z "$$p" ] && { echo $$p; break; }; p=$${p%/*}; done) + export _TOP_DIR := $(shell p=$$PWD; while :; do \ + [ -d $$p/.git -o -z "$$p" ] && { echo $$p; break; }; p=$${p%/*}; done) + -include $(PKG_TOP_DIR)/env.mk +endif +include $(TENV) +ifeq ($(_TOP_DIR),) + _TOP_DIR=/mnt/tests/$(TOPLEVEL_NAMESPACE) +endif + +export TESTVERSION=1.0 + +BUILT_FILES= + +FILES=$(TENV) $(METADATA) Makefile common-symbols.sh common-tests.sh runtest.sh test-ksc-elf.sh test-ksc-exec.sh test-ksc-help.sh test-ksc-invalid-file.sh test-ksc-man.sh + +.PHONY: all install download clean + +run: $(FILES) build + ( set +o posix; . /usr/bin/rhts_environment.sh; \ + . /usr/share/beakerlib/beakerlib.sh; \ + . runtest.sh ) + +build: $(BUILT_FILES) + test -x runtest.sh || chmod a+x runtest.sh + +clean: + rm -fr *~ $(BUILT_FILES) + +include /usr/share/rhts/lib/rhts-make.include + +$(METADATA): Makefile + @echo "Owner: Čestmír Kalina " > $(METADATA) + @echo "Name: $(TEST)" >> $(METADATA) + @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) + @echo "Path: $(TEST_DIR)" >> $(METADATA) + @echo "Description: ksc tests">> $(METADATA) + @echo "Type: Regression" >> $(METADATA) + @echo "TestTime: 1h" >> $(METADATA) + @echo "RunFor: ksc" >> $(METADATA) + @echo "Requires: bash" >> $(METADATA) + @echo "Requires: coreutils" >> $(METADATA) + @echo "Requires: kernel" >> $(METADATA) + @echo "Requires: kmod" >> $(METADATA) + @echo "Requires: kernel-devel" >> $(METADATA) + @echo "Requires: kernel-modules" >> $(METADATA) + @echo "Requires: kernel-abi-whitelists" >> $(METADATA) + @echo "Requires: xz" >> $(METADATA) + @echo "Requires: bzip2" >> $(METADATA) + @echo "Requires: gzip" >> $(METADATA) + @echo "Requires: $(PACKAGE_NAME) rpm wget" >> $(METADATA) + @echo "Priority: Normal" >> $(METADATA) + @echo "License: GPLv2" >> $(METADATA) + @echo "Confidential: no" >> $(METADATA) + @echo "Destructive: no" >> $(METADATA) + rhts-lint $(METADATA) + + diff --git a/tests/sanity/README.md b/tests/sanity/README.md new file mode 100644 index 0000000..18870ac --- /dev/null +++ b/tests/sanity/README.md @@ -0,0 +1,78 @@ +# README + +The following test cases will be considered as a part of `ksc` gating. + +## Installation issues + +1. Check whether Module.symvers has been installed +1. Check whether kabi-whitelists package has been installed +1. Python Bugzilla interface has been installed +1. Expect error when nm is not found in $PATH. + +## Valid uses of `ksc` + +List of tests: + +1. No external symbol required +1. Whitelisted symbol use only +1. Non-whitelisted symbol use only +1. Mixed whitelisted and non-whitelisted symbol use +1. Mixed whitelisted and non-whitelisted symbol use with multiple -k arguments +1. `ksc` called on 8139, crc32_generic, xor + +Testing will be done as follows: + +1. If applicable, try and build a kernel module usecase. +1. Pass kernel module(s) to ksc, record output. +1. Using the kabi-tools ksc parser [1], parse ksc output. +1. Using the nm tool, uname -i and kabi-whitelist, indepedently compose + the dictionary that ksc parser produces on ksc output. +1. Check for match. + +Note that this series of tests checks both ksc valid functionality as well as +syntax requirements (indeed, should syntax of a ksc report be significantly +changed, ksc parser would produce different results). + +[1] http://git.engineering.redhat.com/git/users/ckalina/kabi-greylists-devel.git/tree/src/greylists/ksc.py + +## Submission tests + +Partner RHBZ is used for this purpose. + +1. All of the 'Valid uses of `ksc`' test cases (called w/ -k) will be re-tested +here as well to test immediate submission after generating. +1. Use any ksc-reports.txt to test submission onto partner RHBZ; in particular + test: + - failure on invalid product + - failure on invalid RHBZ credentials (username, password) + - failure on invalid RHBZ API key + - correct submission (using the gating-embedded bugzilla-cli tool to + download and check details of bug and attachments). + +## Further tests include: + +1. Check whether justification carry-over works within the same ko file. +1. Check whether justification carry-over does not happen when different ko + file is used. + +## Invalid uses of `ksc` + +1. Expect error when argument arity is not expected (e.g., $ ksc -k, w/o a ko + file provided) +1. Expect error when passing non-kernel module as a kernel module (-k) +1. Expect error when passing a file w/o read permissions (e.g., kernel module, + Module.symvers, ...) +1. Expect error when passing a non-existent file (e.g., kernel module, ...) +1. Expect error when passing a malformed kernel module. +1. Expect error when passing a malformed Module.symvers. +1. Expect error when passing a ksc-report.txt as a source of justifications. + +## Compatibility Tests + +1. Verify that no options were removed from -h/--help. +1. Verify that no options were removed from manpage. + +## Test known bugs + +1. EOFError when piping through ksc + diff --git a/tests/sanity/_env b/tests/sanity/_env new file mode 100644 index 0000000..917a664 --- /dev/null +++ b/tests/sanity/_env @@ -0,0 +1,9 @@ +#This file was generated automatically,do not manually change it. +export TOPLEVEL_NAMESPACE=kernel +export PKG_NAMESPACE=kernel/general +export RELATIVE_PATH=ksc/sanity +export PACKAGE=general +export PACKAGE_NAME=general +export PKG_LIST= +export TEST=/kernel/general/ksc/sanity + diff --git a/tests/sanity/common-symbols.sh b/tests/sanity/common-symbols.sh new file mode 100644 index 0000000..36bb06f --- /dev/null +++ b/tests/sanity/common-symbols.sh @@ -0,0 +1,65 @@ +#!/usr/bin/env bash + +# Get all symbols from ksc result's nonwhitelisted sections +function ksc_report_symbols_nonwhitelisted() { + sed -n 's/^.*(\([^)]*\))$/\1/p' ~/ksc-result.txt \ + | sort \ + | uniq +} + +# Get all symbols from ksc result's whitelisted sections +function ksc_report_symbols_whitelisted() { + sed -n '/^\[WHITELISTUSAGE\]$/,/^\[NONWHITELISTUSAGE\]$/p' \ + ~/ksc-result.txt \ + | grep -v '^\[' \ + | sort \ + | uniq +} + +# Get all symbols from ksc result +function ksc_report_symbols_all() { + { + ksc_report_symbols_whitelisted + ksc_report_symbols_nonwhitelisted + } | sort | uniq +} + +# Get undefined symbols in all argument-provided ko files +function ko_get_undefined() { + echo -e ${@/%/\\n} \ + | xargs -I KO nm -u KO \ + | awk '{print $(NF);}' \ + | sort \ + | uniq +} + +# Get defined symbols in all argument-provided ko files +function ko_get_defined() { + echo -e ${@/%/\\n} \ + | xargs -I KO nm --defined-only KO \ + | awk '{print $(NF);}' \ + | sort \ + | uniq +} + +# Get all undefined symbols for the group; i.e., symbols defined in one +# ko and undefined in another will be ignored; this captures ksc behaviour +# when used w/ multiple -k options. +function ko_get_group_undefined() { + comm -23 <(ko_get_undefined "$@") <(ko_get_defined "$@") +} + +# Get all symbols present in kABI whitelist +function kabi_whitelists_symbols() { + grep -h '^[[:space:]]' /lib/modules/kabi-current/* \ + | tr -d '\t' \ + | sort \ + | uniq +} + +# Get all symbols present in Module.symvers +function get_module_symvers_symbols() { + awk '{print $2;}' /usr/src/kernels/$(uname -r)/Module.symvers \ + | sort \ + | uniq +} diff --git a/tests/sanity/common-tests.sh b/tests/sanity/common-tests.sh new file mode 100644 index 0000000..6d2ec7e --- /dev/null +++ b/tests/sanity/common-tests.sh @@ -0,0 +1,148 @@ +if test -z "$MANUAL" +then + export COLOR_NC= + export COLOR_WHITE= + export COLOR_BLACK= + export COLOR_BLUE= + export COLOR_LIGHT_BLUE= + export COLOR_GREEN= + export COLOR_LIGHT_GREEN= + export COLOR_CYAN= + export COLOR_LIGHT_CYAN= + export COLOR_RED= + export COLOR_LIGHT_RED= + export COLOR_PURPLE= + export COLOR_LIGHT_PURPLE= + export COLOR_BROWN= + export COLOR_YELLOW= + export COLOR_GRAY= + export COLOR_LIGHT_GRAY= +else + export COLOR_NC='\e[0m' + export COLOR_WHITE='\e[1;37m' + export COLOR_BLACK='\e[0;30m' + export COLOR_BLUE='\e[0;34m' + export COLOR_LIGHT_BLUE='\e[1;34m' + export COLOR_GREEN='\e[0;32m' + export COLOR_LIGHT_GREEN='\e[1;32m' + export COLOR_CYAN='\e[0;36m' + export COLOR_LIGHT_CYAN='\e[1;36m' + export COLOR_RED='\e[0;31m' + export COLOR_LIGHT_RED='\e[1;31m' + export COLOR_PURPLE='\e[0;35m' + export COLOR_LIGHT_PURPLE='\e[1;35m' + export COLOR_BROWN='\e[0;33m' + export COLOR_YELLOW='\e[1;33m' + export COLOR_GRAY='\e[0;30m' + export COLOR_LIGHT_GRAY='\e[0;37m' +fi + +function pass() +{ + if ! test -z "$MANUAL" + then + echo -en " $COLOR_GRAY$(printf "%0.s-" {1..35})" + echo -en "[ ${COLOR_GREEN}PASS ]" + echo -e "$COLOR_GRAY$(printf "%0.s-" {1..36})$COLOR_NC" + else + rlPass + fi +} + +function fail() +{ + if ! test -z "$MANUAL" + then + echo -en " $COLOR_GRAY$(printf "%0.s-" {1..35})" + echo -en "[ ${COLOR_RED}FAIL ]" + echo -e "$COLOR_GRAY$(printf "%0.s-" {1..36})$COLOR_NC" + else + rlFail + fi +} + +function print_test_case() +{ + if test -z "$MANUAL" + then + return 0 + fi + echo + local msg=" $COLOR_GRAY[${COLOR_BLUE}TEST $1$COLOR_GRAY]" + eval msg="\$msg\$(printf "%0.s-" {1..$[80-${#msg}+${#COLOR_BLUE}+2*${#COLOR_GRAY}]})" + echo -e "$msg$COLOR_NC" +} + +function print_description() +{ + desc=() + eval desc=\(\"\${DESCRIPTION_$1[@]}\"\) + for desc_line in "${desc[@]}" + do + echo " $desc_line" + done + echo +} + +# +# Perform a test +# +# $1 test function +# +function run_test() +{ + rlPhaseStartTest "$1" + + if test $# -eq 0 -o -z $1 + then + rlFail "ERROR: Expected test name to be passed to run_test" \ + "function." >&2 + exit 1 + fi + + local stdout_log="$2" + local stderr_log="$3" + + if test -z $stdout_log -o ! -e $stdout_log + then + rlFail "ERROR: Test inconsistency, STDOUT log file missing or" \ + "non-existent." >&2 + exit 1 + fi + + if test -z $stderr_log -o ! -e $stderr_log + then + rlFail "ERROR: Test inconsistency, STDERR log file missing or" \ + "non-existent." >&2 + exit 1 + fi + + echo > $stdout_log + echo > $stderr_log + + print_test_case "$1" + + $1 "$stdout_log" "$stderr_log" + ret=$? + + print_description "$1" + + if test $ret -eq 0 + then + pass + else + fail + + echo "STDOUT {" + cat $stdout_log + echo "}" + + echo "STDERR {" + cat $stderr_log + echo "}" + + return 1 + fi + + rlPhaseEnd +} diff --git a/tests/sanity/runtest.sh b/tests/sanity/runtest.sh new file mode 100755 index 0000000..4cef9c5 --- /dev/null +++ b/tests/sanity/runtest.sh @@ -0,0 +1,179 @@ +#!/usr/bin/env bash + +function cleanup() +{ + rlPhaseStartCleanup + rm -rf "${TEMPFILES[@]}" + rlPhaseEnd +} +trap cleanup 0 1 9 15 + +# --- Globals ----------------------------------------------------------------- + +SCRIPT_ROOT="$(dirname "$(realpath "${BASH_SOURCE[0]}")")" + +# A list of temporary files; used by cleanup to delete on signals 0 1 9 15. +TEMPFILES=() + +# A list of dependencies to include. +INCLUDES=() + +# A list of files containing test definitions. +# These are auto-discovered using test-*.sh pattern. +TESTS_FILES=() + +# A list of tests to run. +# These are automatically added by test files. +TESTS=() + +# The following can be overriden to force a particular setting. + +# RPM_BIN_DIR is not defined +# RPM_DATA_DIR is not defined +# KSC_BIN is not defined +# MOD_PATH is not defined +# MANUAL is not defined + +# --- Initialization ---------------------------------------------------------- + +echo +echo " :: ksc Gating for RHEL" +echo + +# Requires: restraint-rhts +. /usr/bin/rhts-environment.sh || exit 1 +# Requires: beakerlib +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +INCLUDES+=("$SCRIPT_ROOT/common-tests.sh") +INCLUDES+=("$SCRIPT_ROOT/common-symbols.sh") + +TESTS_FILES+=("$SCRIPT_ROOT/test-"*".sh") + +# --- bkr journal ------------------------------------------------------------- + +rlJournalStart + +rlPhaseStartSetup + +# --- Load dependencies ------------------------------------------------------- + +for path in ${INCLUDES[@]} ${TESTS_FILES[@]} +do + if ! test -r $path + then + rlFail "Path \`$path' does not exist or is not readable" + exit 1 + fi + source $path && { + rlPass "File \`$(basename "$path")' loaded." + } || { + rlFail "Unable to load \`$path'." + exit 1 + } +done + +# --- Temporary files --------------------------------------------------------- + +echo ":: Initialization: Temporary files." + +__stdout_log=$(mktemp -p /tmp ksc-test-stdout.XXXXX) +TEMPFILES+=("$__stdout_log") + +__stderr_log=$(mktemp -p /tmp ksc-test-stderr.XXXXX) +TEMPFILES+=("$__stderr_log") + +# --- Evaluate RPM-specific macros -------------------------------------------- +# This is required not to hardcode ksc install location should %{_bindir} and +# %{_datadir} be changed. + +echo ":: Initialization: Evaluating RPM macros." + +if test -z "$RPM_BIN_DIR" +then + RPM_BIN_DIR="$(rpm --eval '%{_bindir}')" + echo " * RPM %{_bindir} determined as: $RPM_BIN_DIR" +fi + +if test -z "$RPM_DATA_DIR" +then + RPM_DATA_DIR="$(rpm --eval '%{_datadir}')" + echo " * RPM %{_datadir} determined as: $RPM_DATA_DIR" +fi + +# --- Determine ksc location -------------------------------------------------- + +if test -z "$KSC_BIN" +then + KSC_BIN="$RPM_BIN_DIR/ksc" + echo ":: ksc path determined as: $KSC_BIN" +fi + +if test -z "$MOD_PATH" +then + if [[ -L /lib && -d /lib ]]; then + MOD_PATH=/usr/lib/modules/$(uname -r)/ + else + MOD_PATH=/lib/modules/$(uname -r)/ + fi + echo ":: Module path determined as: $MOD_PATH" +fi + +rlPass "Initialization passed." + +rlPhaseEnd + +# --- Run tests --------------------------------------------------------------- + +overall_status=0 +for test in ${TESTS[@]} +do + run_test $test "$__stdout_log" "$__stderr_log" + if test $? -gt 0 + then + overall_status=1 + fi +done + +rlPhaseStartTest + +if test $overall_status -gt 0 +then + rlFail "Some tests failed." + exit 1 +else + rlPass "All tests passed." +fi +echo + +rlPhaseEnd + +rlJournalPrintText + +rlJournalEnd + +exit 0 + +# -- Future tests: pylint/flake8 on the python source itself + +# First, we need to detect whether or not $KSC_BIN is a shell launcher or +# the python script itself. As of this moment, $KSC_BIN is a shell launcher, +# however, currently there is no real reason for that and might be changed +# in the future. To prepare for this alternative, and to be backwards compat +# if the change occurs, detect whether $KSC_BIN is the python executable script +# or a shell launcher and obtain path to the python script in the latter case. + +KSC_PY="" +case $(file "$KSC_BIN" | awk -F'[,:] ' '{print $2;}') in +"POSIX shell script") + # We're dealing with a launcher, get the python script itself + KSC_PY="$(grep -o "[^ ]*ksc.py" "$KSC_BIN")" + ;; +"Python script") + # We're dealing with a python script + KSC_PY="$KSC_BIN" + ;; +esac + +# TODO: Call flake8/pylint here + diff --git a/tests/sanity/test-ksc-elf.sh b/tests/sanity/test-ksc-elf.sh new file mode 100644 index 0000000..649fe22 --- /dev/null +++ b/tests/sanity/test-ksc-elf.sh @@ -0,0 +1,176 @@ +#!/usr/bin/env bash +# +# ksc gating +# +# verify that ksc launcher is marked executable +# + +SYMBOL_CHECKS=() + +SYMBOL_CHECKS+=(symbol_check_1) +DESCRIPTION_symbol_check_1=( + "Verify that all symbols in whitelisted and nonwhitelisted sections" + "of the just produced ksc-report.txt are marked as undefined by nm," + "discounting symbols defined within the set of modules used." +) +function symbol_check_1() { + test -z "$(comm -13 <(ksc_report_symbols_all) \ + <(ko_get_group_undefined))" + return $? +} + +SYMBOL_CHECKS+=(symbol_check_2) +DESCRIPTION_symbol_check_2=( + "Verify that all symbols in whitelisted and nonwhitelisted sections" + "of the just produced ksc-report.txt come from Module.symvers only." +) +function symbol_check_2() { + test -z "$(comm -23 <(ksc_report_symbols_all) \ + <(get_module_symvers_symbols))" + return $? +} + +# +SYMBOL_CHECKS+=(symbol_check_3) +DESCRIPTION_symbol_check_3=( + "Verify that all whitelisted symbols are present on kabi whitelist." +) +function symbol_check_3() { + test -z "$(comm -13 <(kabi_whitelists_symbols) \ + <(ksc_report_symbols_whitelisted))" + return $? +} + +function find_ko() +{ + if test -z $1 + then + # TODO ERRROR + return 1 + fi + + local count=$1 + local matches=() + + if test $count -gt 0 + then + matches+=($( + find "$MOD_PATH" -type f -iname "*.ko.*" \ + | head -n $count \ + | xargs -I MATCH bash -c ' + case $(echo MATCH | grep -Eo "[^.]+$") in + xz) unxz MATCH;; + bz2) bzip2 -d MATCH;; + gz) gunzip MATCH;; + *) echo MATCH; exit 0;; + esac; + echo MATCH | sed "s/\.[^.]*$//g";' + )) + fi + + # make sure some matches were found + if test ${#matches[@]} -eq 0 + then + # TODO ERROR + return 1 + fi + + # and that they are in fact readable + for match in ${matches[@]} + do + if test -z $match -o ! -r $match + then + # TODO ERRROR + return 1 + fi + done + + echo ${matches[@]} + + return 0 +} + +function common_ksc_elf_ko() +{ + local test_name="$1" + local stdout_log="$2" + local stderr_log="$3" + local count="$4" + shift 4 + + local ko=($(find_ko $count)) + + eval DESCRIPTION_$test_name+=\(\"\"\) + eval DESCRIPTION_$test_name+=\(\"Test used the following modules:\"\) + for mod in ${ko[@]} + do + mod_rel="$(realpath --relative-to="$MOD_PATH" $ko)" + eval DESCRIPTION_$test_name+=\(\"\${mod_rel/\#/ - }\"\) + done + + rm -f ~/ksc-result.txt + "$KSC_BIN" ${ko[@]/#/-k } >> $stdout_log 2>> $stderr_log + + if test $? -gt 0 + then + echo + echo "ERROR: $KSC_BIN returned w/ non-zero return code when" \ + "presented w/ valid kernel module." + + echo "STDOUT {" + cat $stdout_log + echo "}" + + echo "STDERR {" + cat $stderr_log + echo "}" + + return 1 + fi + + if test ! -s ~/ksc-result.txt + then + echo + echo "ERROR: ~/ksc-result.txt was not created or is empty." + + echo "STDOUT {" + cat $stdout_log + echo "}" + + echo "STDERR {" + cat $stderr_log + echo "}" + + return 1 + fi + + return 0 +} + +TESTS+=(test_ksc_elf_ko_single ${SYMBOL_CHECKS[@]}) + +DESCRIPTION_test_ksc_elf_ko_single=( + "Verify that ksc processes valid ELF kernel module. This amounts to" + "checking that ~/ksc-result.txt is created and that ksc terminates" + "w/ non-zero error code." +) + +function test_ksc_elf_ko_single() +{ + common_ksc_elf_ko test_ksc_elf_ko_single $@ 1 + return $? +} + +TESTS+=(test_ksc_elf_ko_mul) + +DESCRIPTION_test_ksc_elf_ko_mul=( + "Verify that ksc processes multiple valid ELF kernel modules. This" + "amounts to checking that ~/ksc-result.txt is created and that ksc" + "terminates w/ non-zero error code." +) + +function test_ksc_elf_ko_mul() +{ + common_ksc_elf_ko test_ksc_elf_ko_mul $@ 2 + return $? +} \ No newline at end of file diff --git a/tests/sanity/test-ksc-exec.sh b/tests/sanity/test-ksc-exec.sh new file mode 100644 index 0000000..46e186a --- /dev/null +++ b/tests/sanity/test-ksc-exec.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env sh +# +# ksc gating +# +# verify that ksc is executable +# + + +TESTS+=(test_ksc_executable) + +DESCRIPTION_test_ksc_executable=( + "Verify that ksc is executable." +) + +function test_ksc_executable() +{ + local stdout_log="$1" + local stderr_log="$2" + shift 2 + + if ! test -x "$KSC_BIN" + then + echo + echo "ERROR: $KSC_BIN either does not exist or is not" \ + "executable!" >&2 + ls -l "$KSC_BIN" >&2 + return 1 + fi + return 0 +} \ No newline at end of file diff --git a/tests/sanity/test-ksc-help.sh b/tests/sanity/test-ksc-help.sh new file mode 100644 index 0000000..58e112f --- /dev/null +++ b/tests/sanity/test-ksc-help.sh @@ -0,0 +1,56 @@ +#!/usr/bin/env sh +# +# ksc gating +# +# verify that ksc -h (--help) provides usage and terminated w/ non-zero error +# + + +TESTS+=(test_ksc_help) + +DESCRIPTION_test_ksc_help=( + "Verify that ksc -h (--help) provides usage and terminated w/" + "non-zero error." +) + +function test_ksc_help() +{ + local stdout_log="$1" + local stderr_log="$2" + shift 2 + + for arg in -h --help + do + echo > $stdout_log + echo > $stderr_log + + echo "# Calling $KSC_BIN $arg" >> $stdout_log + "$KSC_BIN" $arg >> $stdout_log 2>> $stderr_log + + if test $? -gt 0 + then + echo + echo "ERROR: $KSC_BIN $arg failed with non-zero" \ + "return code. Expected zero." + + echo "STDOUT {" + cat $stdout_log + echo "}" + + echo "STDERR {" + cat $stderr_log + echo "}" + + return 1 + fi + + if test ! -s "$stdout_log" -a ! -s "$stderr_log" + then + echo + echo "ERROR: $KSC_BIN $arg produced no data." >&2 + return 1 + fi + + done + return 0 +} \ No newline at end of file diff --git a/tests/sanity/test-ksc-invalid-file.sh b/tests/sanity/test-ksc-invalid-file.sh new file mode 100644 index 0000000..af89593 --- /dev/null +++ b/tests/sanity/test-ksc-invalid-file.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env sh +# +# ksc gating +# +# verify that ksc fails when presented w/ non-existent path +# + +TESTS+=(test_ksc_invalid_file) + +DESCRIPTION_test_ksc_invalid_file=( + "Verify that ksc fails when presented w/ non-existent path." +) + +function test_ksc_invalid_file() +{ + local stdout_log="$1" + local stderr_log="$2" + shift 2 + + local non_exist_file="/tmp/$RANDOM" + while test -e $non_exist_file + do + non_exist_file=$non_exist_file$RANDOM + done + + "$KSC_BIN" -k "$non_exist_file" >> $stdout_log 2>> $stderr_log + + if test $? -eq 0 -a ! -e "$non_exist_file" + then + echo + echo "ERROR: $KSC_BIN returned w/ zero return code when" \ + "presented w/ non-existent file." + + echo "STDOUT {" + cat $stdout_log + echo "}" + + echo "STDERR {" + cat $stderr_log + echo "}" + + return 1 + fi + + return 0 +} \ No newline at end of file diff --git a/tests/sanity/test-ksc-man.sh b/tests/sanity/test-ksc-man.sh new file mode 100644 index 0000000..0f38da5 --- /dev/null +++ b/tests/sanity/test-ksc-man.sh @@ -0,0 +1,55 @@ +#!/usr/bin/env sh +# +# ksc gating +# +# verify that ksc manpage exists and is nonempty +# + + +TESTS+=(test_ksc_manpage) + +DESCRIPTION_test_ksc_manpage=( + "Verify that ksc manpage exists and is nonempty." +) + +function test_ksc_manpage() +{ + local stdout_log="$1" + local stderr_log="$2" + shift 2 + + LC_ALL=en_US.UTF-8 man -P cat ksc > $stdout_log 2> $stderr_log + + if test $? -gt 0 + then + echo + echo "$? ERROR: man ksc failed with non-zero" \ + "return code. Expected zero." + + echo "STDOUT {" + cat $stdout_log + echo "}" + + echo "STDERR {" + cat $stderr_log + echo "}" + + return 1 + fi + + if test ! -s "$stdout_log" + then + echo + echo "ERROR: man ksc produced no data on stdout." >&2 + return 1 + fi + + if test -s "$stderr_log" + then + echo + echo "ERROR: man ksc produced data on stderr." >&2 + return 1 + fi + + return 0 +} \ No newline at end of file diff --git a/tests/tests.yml b/tests/tests.yml new file mode 100644 index 0000000..ba7cb19 --- /dev/null +++ b/tests/tests.yml @@ -0,0 +1,18 @@ +- hosts: localhost + tags: + - classic + roles: + - role: standard-test-beakerlib + tests: + - sanity + required_packages: + - bash + - coreutils + - kernel + - kernel-devel + - kernel-modules + - kernel-abi-whitelists + - xz + - bzip2 + - gzip +