From dc35baebddb5ddcd5019b2329d6af2804c1ad7ed Mon Sep 17 00:00:00 2001 From: Mikolaj Izdebski Date: Fri, 5 Jul 2024 10:14:09 +0200 Subject: [PATCH] Add Sanity/antunit-tests as Tier2 test --- Sanity/antunit-tests/main.fmf | 9 ++++++ Sanity/antunit-tests/runtest.sh | 55 +++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) create mode 100644 Sanity/antunit-tests/main.fmf create mode 100755 Sanity/antunit-tests/runtest.sh diff --git a/Sanity/antunit-tests/main.fmf b/Sanity/antunit-tests/main.fmf new file mode 100644 index 0000000..e542d33 --- /dev/null +++ b/Sanity/antunit-tests/main.fmf @@ -0,0 +1,9 @@ +summary: Run AntUnit tests +description: | + Run upstream Ant AntUnit tests that are packaged in the SRPM. +duration: 15m +tier: 2 +require: + - ant-testutil + - ant-junit + - junit diff --git a/Sanity/antunit-tests/runtest.sh b/Sanity/antunit-tests/runtest.sh new file mode 100755 index 0000000..c42fdb0 --- /dev/null +++ b/Sanity/antunit-tests/runtest.sh @@ -0,0 +1,55 @@ +#!/bin/bash +# Author: Mikolaj Izdebski +. /usr/share/beakerlib/beakerlib.sh + +# Tests to explicitly exclude. +# Script tests won't work with OpenJDK because OpenJDK, unlike Oracle +# Java, does not include Rhino JavaScript engine +EXCLUDES=**/script-test.xml,**/scriptcondition-test.xml + +rlJournalStart + + rlPhaseStartSetup + rlAssertRpm ant + rlAssertBinaryOrigin ant ant + rlRun "pushd \$(mktemp -d)" + rlPhaseEnd + + rlPhaseStartTest "prepare test sources" + rlFetchSrcForInstalled ant + srpm=$(echo ant-*.src.rpm) + rlAssertExists ${srpm} + rlRun "rpm2cpio ${srpm} | cpio -id" + tarball=$(echo apache-ant-*.tar.bz2) + rlAssertExists ${tarball} + rlRun "tar xf ${tarball}" + basedir=$(find -type d -name apache-ant-\*) + rlAssertExists ${basedir}/ + rlPhaseEnd + + rlPhaseStartTest "prepare test dependencies" + # Fetch AntUnit JAR + rlRun "ant -f ${basedir}/fetch.xml antunit -Ddest=optional" + antunit=$(readlink -f ${basedir}/lib/optional/ant-antunit*.jar) + rlAssertExists ${antunit} + # Many tests expect ant classes to be under build/classe/ + rlRun "mkdir -p ${basedir}/build/classes/" + for jar in ant.jar ant-testutil.jar; do + rlAssertExists "/usr/share/ant/lib/${jar}" + rlRun "(cd ${basedir}/build/classes/ && jar xf /usr/share/ant/lib/${jar})" + done + rlPhaseEnd + + rlPhaseStartTest "run AntUnit tests" + # Don't run JUnit tests, only AntUnit tests + rlRun "sed -i '/