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/.yasm.metadata b/.yasm.metadata new file mode 100644 index 0000000..bc9771c --- /dev/null +++ b/.yasm.metadata @@ -0,0 +1 @@ +b7574e9f0826bedef975d64d3825f75fbaeef55e yasm-1.3.0.tar.gz diff --git a/plans/ci.fmf b/plans/ci.fmf new file mode 100644 index 0000000..1ad2c12 --- /dev/null +++ b/plans/ci.fmf @@ -0,0 +1,6 @@ +summary: CI Gating Plan +discover: + how: fmf + directory: tests +execute: + how: beakerlib diff --git a/tests/Regression/testsuite/main.fmf b/tests/Regression/testsuite/main.fmf new file mode 100644 index 0000000..1f4b56c --- /dev/null +++ b/tests/Regression/testsuite/main.fmf @@ -0,0 +1,17 @@ +summary: testsuite +description: '' +contact: Martin Cermak +component: +- yasm +test: ./runtest.sh +framework: beakerlib +recommend: +- yasm +- bison +- byacc +- gettext-devel +- xmlto +- rpm-build +duration: 48h +extra-summary: /tools/yasm/Regression/testsuite +extra-task: /tools/yasm/Regression/testsuite diff --git a/tests/Regression/testsuite/runtest.sh b/tests/Regression/testsuite/runtest.sh new file mode 100755 index 0000000..4c66f1f --- /dev/null +++ b/tests/Regression/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/yasm/Regression/testsuite +# Description: testsuite +# Author: Martin Cermak +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2019 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="yasm" + +rlJournalStart + rlPhaseStartSetup + rlAssertRpm $PACKAGE + rlRun "TMP=\$(mktemp -d)" + rlRun "pushd $TMP" + + rlFetchSrcForInstalled $PACKAGE + rlRun "dnf builddep -y *src.rpm --nobest" + rlRun "rpm --define='_topdir $TMP' -Uvh *src.rpm" + rlRun "rpmbuild --define='_topdir $TMP' -bc SPECS/yasm.spec" + rlRun "pushd BUILD/yasm-*" + rlPhaseEnd + + rlPhaseStartTest + rlRun "make check |& tee test.log" + rlRun "PASS=$(awk '/# PASS:/ {print $3}' test.log)" + rlRun "FAIL=$(awk '/# FAIL:/ {print $3}' test.log)" + rlRun "test $PASS -ge 44" + rlRun "test $FAIL -eq 0" + rlPhaseEnd + + rlPhaseStartCleanup + rlRun "popd; popd" + rlRun "rm -r $TMP" + rlPhaseEnd +rlJournalPrintText +rlJournalEnd