Skip to content

Commit

Permalink
Add test for EFI log processing
Browse files Browse the repository at this point in the history
'/usr/libexec/anaconda/log-capture' is an util to generate runtime logs.
This commit adds test validating output of this util.
  • Loading branch information
elkoniu committed Oct 30, 2024
1 parent 2ca0796 commit 66e8289
Show file tree
Hide file tree
Showing 3 changed files with 70 additions and 0 deletions.
21 changes: 21 additions & 0 deletions efi-log-check.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
SYSROOT=/mnt/sysroot
RESULT_FILE=${SYSROOT}/root/RESULT

# Check if log util can be called
function check_log_util_exist() {
if [ ! -f /usr/libexec/anaconda/log-capture ]; then
echo "*** Failed check: log-capture util does not exist" >> ${RESULT_FILE}
fi
}

# Check if log utils runs without failure
function check_log_util_runs() {
local exit_code=0

/usr/libexec/anaconda/log-capture

if [[ $? -ne ${exit_code} ]]; then
echo "*** Failed check: log-capture util cant be called" >> ${RESULT_FILE}
fi
}

25 changes: 25 additions & 0 deletions efi-log.ks.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#version=DEVEL
#test name: efi-log
%ksappend repos/default.ks

%ksappend common/common_no_payload.ks

%packages
@core
%end

%post --nochroot

@KSINCLUDE@ efi-log-check.sh

check_log_util_exist
check_log_util_runs

%end

%post

# No error was written to /root/RESULT file, everything is OK
%ksappend validation/success_if_result_empty_standalone.ks

%end
24 changes: 24 additions & 0 deletions efi-log.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#
# Copyright (C) 2024 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 v.2, or (at your option) any later version.
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY expressed or implied, including the implied warranties 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. Any Red Hat trademarks that are incorporated in the
# source code or documentation are not subject to the GNU General Public
# License and may only be used or replicated with the express permission of
# Red Hat, Inc.
#
# Red Hat Author(s): Paweł Poławski <[email protected]>

# Ignore unused variable parsed out by tooling scripts as test tags metadata
# shellcheck disable=SC2034
TESTTYPE="efi log coverage"

. ${KSTESTDIR}/functions.sh

0 comments on commit 66e8289

Please sign in to comment.