dev-java/antunit: add 1.4.1-r1 for >=dev-java/ant-1.10.14

Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net>
Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
This commit is contained in:
Volkmar W. Pogatzki
2023-12-31 13:28:19 +01:00
committed by Miroslav Šulc
parent 479407d69f
commit 2c81609acd
3 changed files with 73 additions and 54 deletions

View File

@@ -1,4 +1,4 @@
# Copyright 1999-2023 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,53 +17,38 @@ S="${WORKDIR}/apache-ant-${P}"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64"
KEYWORDS="~amd64 ~arm ~arm64"
VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/ant.apache.org.asc"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-ant )"
# reset to ant-core:0 when ready
CP_DEPEND="
dev-java/ant-core:0
>=dev-java/ant-1.10.14:0
dev-java/junit:4
"
DEPEND="${CP_DEPEND}
>=virtual/jdk-1.8:*
test? (
dev-java/ant-testutil:0
)
test? ( >=dev-java/ant-1.10.14:0[junit,testutil] )
"
RDEPEND="${CP_DEPEND}
>=virtual/jre-1.8:*"
DOCS=( NOTICE README WHATSNEW )
HTML_DOCS=( README.html )
PATCHES=(
# Some tests expect classes in "build" instead in "target" directory.
"${FILESDIR}/antunit-1.4.1-gentoo.patch"
)
JAVA_RESOURCE_DIRS="res"
JAVA_SRC_DIR="src/main"
JAVA_TEST_GENTOO_CLASSPATH="ant-testutil"
JAVA_TEST_GENTOO_CLASSPATH="ant"
JAVA_TEST_SRC_DIR="src/tests/junit"
src_prepare() {
default #780585
java-pkg-2_src_prepare
# java-pkg-simple.eclass wants resources in JAVA_RESOURCE_DIRS
mkdir -p "res/org/apache/ant/antunit" || die
cp {src/main,res}/org/apache/ant/antunit/antlib.xml || die
# Some tests expect classes in "build" instead in "target" directory.
sed -e 's:build\(/classes\):target\1:' \
-i src/etc/testcases/assert.xml \
-i src/tests/junit/org/apache/ant/antunit/AssertTest.java || die
sed -e 's:build\(/test-classes\):target\1:' \
-i src/etc/testcases/antunit/java-io.xml || die
}
src_test() {
local vm_version="$(java-config -g PROVIDES_VERSION)"
if ver_test "${vm_version}" -ge 21; then
eapply "${FILESDIR}/antunit-1.4.1-AntUnitTest.patch"
# java.lang.UnsupportedOperationException:
# The Security Manager is deprecated and will be removed in a future release
JAVA_TEST_EXCLUDES="org.apache.ant.antunit.junit3.EatYourOwnDogFoodTest"
fi
java-pkg-simple_src_test
}

View File

@@ -1,28 +0,0 @@
There was 1 failure:
1) testSystemIoHandling(org.apache.ant.antunit.AntUnitTest)
/var/tmp/portage/dev-java/antunit-1.4.1/work/apache-ant-antunit-1.4.1/src/etc/testcases/antunit.xml:84: Tests failed with 0 failures and 1 error
at org.apache.ant.antunit.AntUnit.execute(AntUnit.java:231)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
at org.apache.tools.ant.Task.perform(Task.java:350)
at org.apache.tools.ant.Target.execute(Target.java:449)
at org.apache.tools.ant.Target.performTasks(Target.java:470)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1401)
at org.apache.tools.ant.Project.executeTarget(Project.java:1374)
at org.apache.ant.antunit.AntUnitTest.testSystemIoHandling(AntUnitTest.java:103)
FAILURES!!!
Tests run: 126, Failures: 1
--- a/src/tests/junit/org/apache/ant/antunit/AntUnitTest.java
+++ b/src/tests/junit/org/apache/ant/antunit/AntUnitTest.java
@@ -91,7 +91,7 @@ public class AntUnitTest extends BuildFileTest {
executeTarget("testNewProject");
}
- public void testSystemIoHandling() {
+ public void noTestSystemIoHandling() {
PrintStream savedErr = System.err;
PrintStream savedOut = System.out;
try {

View File

@@ -0,0 +1,62 @@
--- a/src/etc/testcases/antunit/java-io.xml
+++ b/src/etc/testcases/antunit/java-io.xml
@@ -30,7 +30,7 @@ under the License.
<target name="testTaskHandlingOutput">
<java classname="org.apache.ant.antunit.AntUnitTest$HelloWorld"
outputproperty="propertyToSet"
- classpath="build/test-classes"
+ classpath="target/test-classes"
failonerror="true"
/>
<au:assertEquals expected="HelloWorld" actual="${propertyToSet}" />
--- a/src/etc/testcases/assert.xml
+++ b/src/etc/testcases/assert.xml
@@ -156,28 +156,28 @@ under the License.
<au:assertDestIsUptodate
src="../../main/org/apache/ant/antunit/AssertTask.java"
- dest="../../../build/classes/org/apache/ant/antunit/AssertTask.class"/>
+ dest="../../../target/classes/org/apache/ant/antunit/AssertTask.class"/>
</target>
<target name="assertDestIsUptodateFail">
<au:assertDestIsUptodate
dest="../../main/org/apache/ant/antunit/AssertTask.java"
- src="../../../build/classes/org/apache/ant/antunit/AssertTask.class"/>
+ src="../../../target/classes/org/apache/ant/antunit/AssertTask.class"/>
</target>
<target name="assertDestIsOutofdatePass">
<au:assertDestIsOutofdate
dest="../../main/org/apache/ant/antunit/AssertTask.java"
- src="../../../build/classes/org/apache/ant/antunit/AssertTask.class"/>
+ src="../../../target/classes/org/apache/ant/antunit/AssertTask.class"/>
</target>
<target name="assertDestIsOutofdateFail">
<au:assertDestIsOutofdate
src="../../main/org/apache/ant/antunit/AssertTask.java"
- dest="../../../build/classes/org/apache/ant/antunit/AssertTask.class"/>
+ dest="../../../target/classes/org/apache/ant/antunit/AssertTask.class"/>
</target>
<target name="assertFilesMatchPass">
--- a/src/tests/junit/org/apache/ant/antunit/AssertTest.java
+++ b/src/tests/junit/org/apache/ant/antunit/AssertTest.java
@@ -137,11 +137,11 @@ public class AssertTest extends BuildFileTest {
}
public void testDestIsUptodateFail() {
testFail("assertDestIsUptodateFail",
- "Expected '../../main/org/apache/ant/antunit/AssertTask.java' to be more recent than '../../../build/classes/org/apache/ant/antunit/AssertTask.class'");
+ "Expected '../../main/org/apache/ant/antunit/AssertTask.java' to be more recent than '../../../target/classes/org/apache/ant/antunit/AssertTask.class'");
}
public void testDestIsOutofdateFail() {
testFail("assertDestIsOutofdateFail",
- "Expected '../../main/org/apache/ant/antunit/AssertTask.java' to be more recent than '../../../build/classes/org/apache/ant/antunit/AssertTask.class'");
+ "Expected '../../main/org/apache/ant/antunit/AssertTask.java' to be more recent than '../../../target/classes/org/apache/ant/antunit/AssertTask.class'");
}
public void testFilesMatchFail() {
testFail("assertFilesMatchFail",