From 29c716fe0ec8e3f9eb8c4e13f071e8616888830a Mon Sep 17 00:00:00 2001 From: Martin Cermak Date: Thu, 6 Apr 2023 15:15:25 +0200 Subject: [PATCH] CI Tests: Copy test coverage over from rhel-8.8.0 branch and FMF-ize it --- .fmf/version | 1 + plans/ci.fmf | 6 +++ tests/internal-testsuite/main.fmf | 20 ++++++++++ tests/internal-testsuite/runtest.sh | 59 +++++++++++++++++++++++++++++ 4 files changed, 86 insertions(+) create mode 100644 .fmf/version create mode 100644 plans/ci.fmf create mode 100644 tests/internal-testsuite/main.fmf create mode 100755 tests/internal-testsuite/runtest.sh diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/plans/ci.fmf b/plans/ci.fmf new file mode 100644 index 0000000..85710d6 --- /dev/null +++ b/plans/ci.fmf @@ -0,0 +1,6 @@ +summary: CI Gating Plan +discover: + how: fmf + directory: tests +execute: + how: tmt diff --git a/tests/internal-testsuite/main.fmf b/tests/internal-testsuite/main.fmf new file mode 100644 index 0000000..0d0ed42 --- /dev/null +++ b/tests/internal-testsuite/main.fmf @@ -0,0 +1,20 @@ +summary: internal-testsuite +description: '' +enabled: true +contact: Martin Coufal +component: + - libmpc +test: ./runtest.sh +framework: beakerlib +recommend: + - libmpc + - gmp-devel + - mpfr-devel + - texinfo + - rpm-build + - gcc + - gcc-c++ +duration: 30m +extra-nitrate: TC#0538960 +extra-summary: /tools/libmpc/Regression/internal-testsuite +extra-task: /tools/libmpc/Regression/internal-testsuite diff --git a/tests/internal-testsuite/runtest.sh b/tests/internal-testsuite/runtest.sh new file mode 100755 index 0000000..b8756d7 --- /dev/null +++ b/tests/internal-testsuite/runtest.sh @@ -0,0 +1,59 @@ +#!/bin/bash +# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# runtest.sh of /tools/libmpc/Regression/internal-testsuite +# Description: internal-testsuite +# Author: Martin Coufal +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2016 Red Hat, Inc. +# +# This program is free software: you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation, either version 2 of +# the License, or (at your option) any later version. +# +# 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, see http://www.gnu.org/licenses/. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +# Include Beaker environment +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +PACKAGE="${PACKAGE:-$(rpm -qf --qf='%{name}\n' /usr/lib64/libmpc.so.3)}" +export PACKAGE + +rlJournalStart + rlPhaseStartSetup + rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" + rlRun "pushd $TmpDir" + rlFetchSrcForInstalled $PACKAGE + rlAssertRpm $PACKAGE + rlRun "yum-builddep -y $PACKAGE*.src.rpm" + rlRun "rpm --define='_topdir $TmpDir' -Uvh *src.rpm" + rlRun "rpmbuild --define='_topdir $TmpDir' -bc SPECS/libmpc.spec" + rlPhaseEnd + + rlPhaseStartTest + rlRun "pushd BUILD/mpc-*" + # test + rlRun "make RUNTESTFLAGS='--tool_exec=$BIN' check |& tee $TmpDir/check.log" + rlRun "popd" + # no unexpected results should appear + rlRun "grep '^# of unexpected' check.log" 1 + rlPhaseEnd + + rlPhaseStartCleanup + rlRun "popd" + rlRun "rm -r $TmpDir" 0 "Removing tmp directory" + rlPhaseEnd +rlJournalPrintText +rlJournalEnd