diff --git a/tests/Sanity/build-package/build-package.spec b/tests/Sanity/build-package/build-package.spec new file mode 100644 index 0000000..8e1f9bd --- /dev/null +++ b/tests/Sanity/build-package/build-package.spec @@ -0,0 +1,27 @@ +Name: build-package +Version: 1 +Release: 1 +Summary: some package +License: XXX +URL: https://www.redhat.com/ +BuildArch: noarch + +BuildRequires: javapackages-local + +%description +Some package. + +%prep +%setup -cT + +%build +touch mf +jar cmf mf out.jar +%mvn_artifact foo:bar:42 out.jar + +%install +%mvn_install + +%files -f .mfiles + +%changelog diff --git a/tests/Sanity/build-package/main.fmf b/tests/Sanity/build-package/main.fmf new file mode 100644 index 0000000..87c4886 --- /dev/null +++ b/tests/Sanity/build-package/main.fmf @@ -0,0 +1,8 @@ +summary: package build test +description: | + Test whether javapacakges-tools can build Java RPM packages and + whether generated provides/requires look sane. + Covers: https://fedoraproject.org/wiki/Changes/Drop_Mandatory_Requires_on_JRE +require: + - javapackages-local + - rpm-build diff --git a/tests/Sanity/build-package/runtest.sh b/tests/Sanity/build-package/runtest.sh new file mode 100755 index 0000000..25a2398 --- /dev/null +++ b/tests/Sanity/build-package/runtest.sh @@ -0,0 +1,27 @@ +#!/bin/bash +# Author: Mikolaj Izdebski +. /usr/share/beakerlib/beakerlib.sh + +rlJournalStart + + rlPhaseStartSetup + rlAssertRpm javapackages-local + spec=$PWD/build-package.spec + rlRun "pushd \$(mktemp -d)" + rlPhaseEnd + + rlPhaseStartTest + rlRun -s "rpmbuild -D '_topdir %{lua:print(posix.getcwd())}' -D '%_sourcedir %{_topdir}' -D '%_builddir %{_topdir}/build' -D '%_srcrpmdir %{_topdir}' -D '%_rpmdir %{_topdir}' -ba $spec" + srpm=build-package-1-1.src.rpm + rpm=noarch/build-package-1-1.noarch.rpm + rlAssertExists $srpm + rlAssertExists $rpm + rlRun -s "rpm -qp $rpm --provides" + rlAssertGrep "mvn(foo:bar) = 42" $rlRun_LOG + rlRun -s "rpm -qp $rpm --requires" + rlAssertGrep "javapackages-filesystem" $rlRun_LOG + rlAssertNotGrep "headless" $rlRun_LOG + rlPhaseEnd + +rlJournalEnd +rlJournalPrintText