diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2024-12-08 18:52:03 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2024-12-08 18:52:03 +0000 |
| commit | 3bbb7e647256e729d667a8fb4943f21233ad72a8 (patch) | |
| tree | 83f8d810198ba8eaaf5a98e503a4ec763c3706ec /dev-java | |
| parent | 82d9bcd6fb9179a51d8655ae6fb9c7fb337f3c72 (diff) | |
| download | baldeagleos-repo-3bbb7e647256e729d667a8fb4943f21233ad72a8.tar.gz baldeagleos-repo-3bbb7e647256e729d667a8fb4943f21233ad72a8.tar.xz baldeagleos-repo-3bbb7e647256e729d667a8fb4943f21233ad72a8.zip | |
Adding metadata
Diffstat (limited to 'dev-java')
| -rw-r--r-- | dev-java/byte-buddy/Manifest | 1 | ||||
| -rw-r--r-- | dev-java/byte-buddy/byte-buddy-1.15.10.ebuild | 144 | ||||
| -rw-r--r-- | dev-java/byte-buddy/files/byte-buddy-1.15.10-Skip-testIgnoreExistingField.patch | 34 | ||||
| -rw-r--r-- | dev-java/javassist/Manifest | 1 | ||||
| -rw-r--r-- | dev-java/javassist/files/javassist-3.29.2-gentoo.patch | 46 | ||||
| -rw-r--r-- | dev-java/javassist/javassist-3.29.2.ebuild | 42 | ||||
| -rw-r--r-- | dev-java/javassist/javassist-3.30.2.ebuild | 54 | ||||
| -rw-r--r-- | dev-java/mockito/mockito-2.28.2-r1.ebuild | 106 |
8 files changed, 395 insertions, 33 deletions
diff --git a/dev-java/byte-buddy/Manifest b/dev-java/byte-buddy/Manifest index f5587d193af3..2fee07df74f6 100644 --- a/dev-java/byte-buddy/Manifest +++ b/dev-java/byte-buddy/Manifest @@ -1 +1,2 @@ DIST byte-buddy-1.14.0.tar.gz 1989303 BLAKE2B c284f54ebc6bf67e4706380f0876f403fcf5ae172a690888d13d6b3399cf41bf1fd8890bf15059f71a9457ec6343254ad1f421f8e4975aa70dd9a2103ab59610 SHA512 e6ccda287935b5ff7104d5c0e4904b0595918a21bcc90c6ac5b2358cc0371b22a4fcac2a95dde9e377c5d1e43077c8b57ea9520a9093b2380ab53c830f107ced +DIST byte-buddy-1.15.10.tar.gz 2057524 BLAKE2B 7f5e178b3ea31fb30379e49d69f34ba1b9953d705a54c3609bb771f66962af776dee95ea10ab7049e50351362ff87c164782bc4b1b782985ac8f122e5833cb4e SHA512 3b7a02475433193efe8a8e20378369ec18f10c81dd90b428d5393c45fe261f678b1707c92923381b8a3030f8a2e8525fe95e3337ca7e5455cdc5fc2647416d2a diff --git a/dev-java/byte-buddy/byte-buddy-1.15.10.ebuild b/dev-java/byte-buddy/byte-buddy-1.15.10.ebuild new file mode 100644 index 000000000000..a1021afe6a00 --- /dev/null +++ b/dev-java/byte-buddy/byte-buddy-1.15.10.ebuild @@ -0,0 +1,144 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +MAVEN_PROVIDES="net.bytebuddy:byte-buddy-agent:${PV} net.bytebuddy:byte-buddy:${PV}" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="Offers convenience for attaching an agent to the local or a remote VM" +HOMEPAGE="https://bytebuddy.net" +SRC_URI="https://github.com/raphw/byte-buddy/archive/${P}.tar.gz" +S="${WORKDIR}/byte-buddy-${P}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64" + +DEPEND=" + >=dev-java/asm-9.7.1:9 + dev-java/findbugs-annotations:0 + dev-java/jna:4 + dev-java/jsr305:0 + >=virtual/jdk-11:* + test? ( + >=dev-java/mockito-2.28.2-r1:2 + ) +" + +RDEPEND=">=virtual/jre-1.8:*" + +PATCHES=( "${FILESDIR}/byte-buddy-1.15.10-Skip-testIgnoreExistingField.patch" ) + +JAVA_CLASSPATH_EXTRA=" + asm-9 + findbugs-annotations + jna-4 + jsr305 +" +JAVADOC_CLASSPATH="${JAVA_CLASSPATH_EXTRA}" +JAVADOC_SRC_DIRS=( + "byte-buddy-agent/src/main/java" + "byte-buddy/src/main/java" +) + +src_prepare() { + default #780585 + java-pkg_clean ! -path "./byte-buddy-dep/src/test/*" # Keep test-classes + java-pkg-2_src_prepare + # https://github.com/raphw/byte-buddy/blob/byte-buddy-1.12.20/byte-buddy-agent/pom.xml#L142-L176 + cat > byte-buddy-agent/src/main/java/module-info.java <<-EOF || die + module net.bytebuddy.agent { + requires java.instrument; + requires static jdk.attach; + requires static com.sun.jna; + requires static com.sun.jna.platform; + requires java.base; + exports net.bytebuddy.agent; + exports net.bytebuddy.agent.utility.nullability; + } + EOF + + # instead of shading byte-buddy-dep we move it into byte-buddy. + mv byte-buddy{-dep,}/src/main/java || die "cannot move sources" + + # https://github.com/raphw/byte-buddy/blob/byte-buddy-1.12.20/byte-buddy/pom.xml#L159-L195 + local exports="$( \ + sed -n '/<packages.list.external>/,/<\/packages.list.external/p' \ + byte-buddy/pom.xml \ + | sed -e 's:^:exports :' -e 's:,:;:' \ + | grep -v 'packages.list.external\|shade' | tr -s '[:space:]' \ + )" || die + cat > byte-buddy/src/main/java/module-info.java <<-EOF || die + module net.bytebuddy { + requires static java.instrument; + requires static java.management; + requires static jdk.unsupported; + requires static net.bytebuddy.agent; + requires static com.sun.jna; + requires static com.sun.jna.platform; + requires java.base; + ${exports} + } + EOF +} + +src_compile() { + einfo "Compiling byte-buddy-agent.jar" + JAVA_JAR_FILENAME="byte-buddy-agent.jar" + JAVA_RESOURCE_DIRS="byte-buddy-agent/src/main/resources" + JAVA_SRC_DIR="byte-buddy-agent/src/main/java" + java-pkg-simple_src_compile + JAVA_GENTOO_CLASSPATH_EXTRA+=":byte-buddy-agent.jar" + rm -r target || die + + einfo "Compiling byte-buddy.jar" + JAVA_JAR_FILENAME="byte-buddy.jar" + JAVA_MAIN_CLASS="net.bytebuddy.build.Plugin\$Engine\$Default" + JAVA_RESOURCE_DIRS=() + JAVA_SRC_DIR="byte-buddy/src/main/java" + java-pkg-simple_src_compile + JAVA_GENTOO_CLASSPATH_EXTRA+=":byte-buddy.jar" + rm -r target || die + + einfo "Building javadocs" + rm byte-buddy{,-agent}/src/main/java/module-info.java || die + use doc && ejavadoc +} + +src_test() { + # instead of shading byte-buddy-dep we move it into byte-buddy. + mv byte-buddy{-dep,}/src/test || die "cannot move tests" + + JAVAC_ARGS="-g" + JAVA_TEST_GENTOO_CLASSPATH="junit-4,mockito-2" + + einfo "Testing byte-buddy-agent" + # https://github.com/raphw/byte-buddy/issues/1321#issuecomment-1252776459 + JAVA_TEST_EXTRA_ARGS=( -Dnet.bytebuddy.test.jnapath="${EPREFIX}/usr/$(get_libdir)/jna-4/" ) + JAVA_TEST_SRC_DIR="byte-buddy-agent/src/test/java" + java-pkg-simple_src_test + + einfo "Testing byte-buddy" + JAVA_TEST_RESOURCE_DIRS=( byte-buddy/src/test/{resources,precompiled*} ) + JAVA_TEST_SRC_DIR="byte-buddy/src/test/java" + + JAVA_TEST_EXCLUDES=( + # all tests in this class fail, https://bugs.gentoo.org/863386 + net.bytebuddy.build.CachedReturnPluginTest + ) + java-pkg-simple_src_test +} + +src_install() { + java-pkg_dojar "byte-buddy-agent.jar" + java-pkg-simple_src_install + + if use source; then + java-pkg_dosrc "byte-buddy-agent/src/main/java/*" + java-pkg_dosrc "byte-buddy/src/main/java/*" + fi +} diff --git a/dev-java/byte-buddy/files/byte-buddy-1.15.10-Skip-testIgnoreExistingField.patch b/dev-java/byte-buddy/files/byte-buddy-1.15.10-Skip-testIgnoreExistingField.patch new file mode 100644 index 000000000000..c90c3c9a66c9 --- /dev/null +++ b/dev-java/byte-buddy/files/byte-buddy-1.15.10-Skip-testIgnoreExistingField.patch @@ -0,0 +1,34 @@ +There was 1 failure: +1) testIgnoreExistingField(net.bytebuddy.build.CachedReturnPluginOtherTest) +net.bytebuddy.pool.TypePool$Resolution$NoSuchTypeException: Cannot resolve type description for net.bytebuddy.build.CachedReturnPlugin$Advice$boolean + at net.bytebuddy.pool.TypePool$Resolution$Illegal.resolve(TypePool.java:190) + at net.bytebuddy.build.CachedReturnPlugin.<init>(CachedReturnPlugin.java:125) + at net.bytebuddy.build.CachedReturnPluginOtherTest.testIgnoreExistingField(CachedReturnPluginOtherTest.java:19) + +FAILURES!!! + +--- a/byte-buddy-dep/src/test/java/net/bytebuddy/build/CachedReturnPluginOtherTest.java ++++ b/byte-buddy-dep/src/test/java/net/bytebuddy/build/CachedReturnPluginOtherTest.java +@@ -6,13 +6,14 @@ import net.bytebuddy.dynamic.ClassFileLocator; + import net.bytebuddy.dynamic.DynamicType; + import org.hamcrest.CoreMatchers; + import org.junit.Test; ++import org.junit.Ignore; + + import static org.hamcrest.CoreMatchers.sameInstance; + import static org.hamcrest.MatcherAssert.assertThat; + + public class CachedReturnPluginOtherTest { + +- @Test ++ @Test @Ignore + @SuppressWarnings("rawtypes") + public void testIgnoreExistingField() { + DynamicType.Builder<ExistingField> builder = new ByteBuddy().redefine(ExistingField.class); +@@ -73,4 +74,4 @@ public class CachedReturnPluginOtherTest { + return null; + } + } +-} +\ No newline at end of file ++} diff --git a/dev-java/javassist/Manifest b/dev-java/javassist/Manifest index ab442f432fc0..473ed4889900 100644 --- a/dev-java/javassist/Manifest +++ b/dev-java/javassist/Manifest @@ -1 +1,2 @@ DIST javassist-3.29.2.tar.gz 1293705 BLAKE2B 23101970a3fe9e4428b9e2e55ec2973663b537b2e205db55952bce116eb0cdd327e156f9bebf16a3c4322d8e5002d612067b14e8d234e87524361b5f08c9ecde SHA512 651f48d9138b54d4816611c077614bbb15f8189d755c2c2c7e5c2dfb35ad8f48cd9d2e0532edbd565456a923b3166eaecdde8702d65c70a32eb21c2d42f67bfc +DIST javassist-3.30.2.tar.gz 1295788 BLAKE2B e54fc5eb0b61c3f706d3d91169fc2ed76b8b5f43c8b4ef9eca3fa8c0001d30fd700bfc3f92c2d1a6e0960910977e6086dfda37602bbc36addaaad9cab253333f SHA512 d4bcfc1dbf94f6727eceb2aa33c9c7b9bfd2087d91e3b8b38df86f79975c26b677301eca900e6fef5415f995428d107f93cb5ee5a0d634a82e14bc0199b49a62 diff --git a/dev-java/javassist/files/javassist-3.29.2-gentoo.patch b/dev-java/javassist/files/javassist-3.29.2-gentoo.patch new file mode 100644 index 000000000000..27ae390d465b --- /dev/null +++ b/dev-java/javassist/files/javassist-3.29.2-gentoo.patch @@ -0,0 +1,46 @@ +adjust BASE_PATH, PATH and JAR_PATH for java-pkg-simple.eclass + +--- a/src/test/javassist/JvstTest4.java ++++ b/src/test/javassist/JvstTest4.java +@@ -635,10 +635,10 @@ public class JvstTest4 extends JvstTestRoot { + assertEquals(packageName, obj.getClass().getPackage().getName()); + } + +- public static final String BASE_PATH = "../../"; ++ public static final String BASE_PATH = ""; + public static final String JAVASSIST_JAR = BASE_PATH + "javassist.jar"; +- public static final String CLASSES_FOLDER = BASE_PATH + "build/classes"; +- public static final String TEST_CLASSES_FOLDER = BASE_PATH + "build/test-classes"; ++ public static final String CLASSES_FOLDER = BASE_PATH + "target/classes"; ++ public static final String TEST_CLASSES_FOLDER = BASE_PATH + "target/test-classes"; + + public static class Inner1 { + public static int get() { +--- a/src/test/javassist/JvstTestRoot.java ++++ b/src/test/javassist/JvstTestRoot.java +@@ -5,10 +5,10 @@ import java.lang.reflect.Method; + + public class JvstTestRoot extends TestCase { + // the directory where all compiled class files are found. +- public static final String PATH = "../../target/test-classes/"; ++ public static final String PATH = "target/test-classes/"; + + // the directory where javassist.jar is found. +- public static final String JAR_PATH = "../../"; ++ public static final String JAR_PATH = ""; + + ClassPool sloader, dloader; + Loader cloader; +--- a/src/test/javassist/JvstTest2.java ++++ b/src/test/javassist/JvstTest2.java +@@ -333,8 +333,8 @@ public class JvstTest2 extends JvstTestRoot { + + url = cp.find("javassist.CtMethod").toString(); + System.out.println("testURL: " + url); +- assertTrue(url.startsWith("file:")); +- assertTrue(url.endsWith("/javassist/CtMethod.class")); ++ assertTrue(url.startsWith("jar:file:")); ++ assertTrue(url.endsWith("javassist.jar!/javassist/CtMethod.class")); + + assertNull(cp.find("javassist.TestURL")); + diff --git a/dev-java/javassist/javassist-3.29.2.ebuild b/dev-java/javassist/javassist-3.29.2.ebuild index a26a44d09cbc..87d13e19f38e 100644 --- a/dev-java/javassist/javassist-3.29.2.ebuild +++ b/dev-java/javassist/javassist-3.29.2.ebuild @@ -1,9 +1,6 @@ # Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# Skeleton command: -# java-ebuilder --generate-ebuild --workdir . --pom pom.xml --download-uri https://github.com/jboss-javassist/javassist/archive/rel_3_29_2_ga.tar.gz --slot 3 --keywords "~amd64 ~arm ~arm64 ~ppc64 ~x86" --ebuild javassist-3.29.2.ebuild - EAPI=8 JAVA_PKG_IUSE="doc source test" @@ -15,29 +12,26 @@ inherit java-pkg-2 java-pkg-simple DESCRIPTION="A class library for editing bytecodes in Java." HOMEPAGE="https://www.javassist.org" SRC_URI="https://github.com/jboss-javassist/javassist/archive/rel_${PV//./_}_ga.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}-rel_${PV//./_}_ga" LICENSE="Apache-2.0 LGPL-2.1 MPL-1.1" SLOT="3" KEYWORDS="amd64 arm64 ppc64 ~amd64-linux ~x86-linux" -# Compile dependencies -# POM: pom.xml -# test? junit:junit:[4.13.1,) -> >=dev-java/junit-4.13.2:4 -# test? org.hamcrest:hamcrest-all:1.3 -> !!!artifactId-not-found!!! - -DEPEND=">=virtual/jdk-11:* - test? ( dev-java/hamcrest-library:1.3 )" +DEPEND=" + >=virtual/jdk-11:* + test? ( dev-java/hamcrest-library:1.3 ) +" RDEPEND=">=virtual/jre-1.8:*" DOCS=( Changes.md README.md ) HTML_DOCS=( tutorial/{brown.css,tutorial.html,tutorial2.html,tutorial3.html} ) -S="${WORKDIR}/${PN}-rel_${PV//./_}_ga" +PATCHES=( "${FILESDIR}/javassist-3.29.2-gentoo.patch" ) JAVA_AUTOMATIC_MODULE_NAME="org.javassist" JAVA_MAIN_CLASS="javassist.CtClass" -JAVA_NEEDS_TOOLS=1 JAVA_SRC_DIR="src/main" JAVA_TEST_GENTOO_CLASSPATH="hamcrest-library-1.3,junit-4" @@ -46,28 +40,9 @@ JAVA_TEST_RUN_ONLY="javassist.JvstTest" # pom.xml, line 167 JAVA_TEST_SRC_DIR="src/test" src_prepare() { - default + default #780585 + java-pkg-2_src_prepare java-pkg_clean javassist.jar - sed -e 's:\.\./\.\./::' -i src/test/javassist/JvstTest{4,Root}.java || die - - # Tests run: 432, Failures: 6 - # https://bugs.gentoo.org/856364 - # Cannot solve those test failures. - # replacing test... with notTest... for those tests - sed \ - -e '/public void/s:testInsertAt:notTestInsertAt:' \ - -e '/public void/s:testInsertLocal:notTestInsertLocal:' \ - -e '/public void/s:testNewArray:notTestNewArray:' \ - -e '/public void/s:testURL:notTestURL:' \ - -i src/test/javassist/JvstTest2.java || die - - sed \ - -e '/public void/s:testMethodParameters:notTestMethodParameters:' \ - -i src/test/javassist/JvstTest4.java || die - - sed \ - -e '/public void/s:testLocalVarAttribute:notTestLocalVarAttribute:' \ - -i src/test/javassist/bytecode/BytecodeTest.java || die } src_test() { @@ -75,5 +50,6 @@ src_test() { einfo "Testing" JAVA_PKG_WANT_SOURCE=11 JAVA_PKG_WANT_TARGET=11 + JAVAC_ARGS="-g -parameters" java-pkg-simple_src_test } diff --git a/dev-java/javassist/javassist-3.30.2.ebuild b/dev-java/javassist/javassist-3.30.2.ebuild new file mode 100644 index 000000000000..fd3122df656a --- /dev/null +++ b/dev-java/javassist/javassist-3.30.2.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +MAVEN_ID="org.javassist:javassist:3.30.2-GA" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="A class library for editing bytecodes in Java." +HOMEPAGE="https://www.javassist.org" +SRC_URI="https://github.com/jboss-javassist/javassist/archive/rel_${PV//./_}_ga.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}-rel_${PV//./_}_ga" + +LICENSE="Apache-2.0 LGPL-2.1 MPL-1.1" +SLOT="3" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~amd64-linux ~x86-linux" + +DEPEND=" + >=virtual/jdk-11:* + test? ( dev-java/hamcrest-library:1.3 ) +" + +RDEPEND=">=virtual/jre-1.8:*" + +DOCS=( Changes.md README.md ) +HTML_DOCS=( tutorial/{brown.css,tutorial.html,tutorial2.html,tutorial3.html} ) + +PATCHES=( "${FILESDIR}/javassist-3.29.2-gentoo.patch" ) + +JAVA_AUTOMATIC_MODULE_NAME="org.javassist" +JAVA_MAIN_CLASS="javassist.CtClass" +JAVA_SRC_DIR="src/main" + +JAVA_TEST_GENTOO_CLASSPATH="hamcrest-library-1.3,junit-4" +JAVA_TEST_RESOURCE_DIRS="src/test/resources" +JAVA_TEST_RUN_ONLY="javassist.JvstTest" # pom.xml, line 167 +JAVA_TEST_SRC_DIR="src/test" + +src_prepare() { + default #780585 + java-pkg-2_src_prepare + java-pkg_clean ! -path "./src/test*" +} + +src_test() { + einfo "Testing" + JAVA_PKG_WANT_SOURCE=11 + JAVA_PKG_WANT_TARGET=11 + JAVAC_ARGS="-g -parameters" + java-pkg-simple_src_test +} diff --git a/dev-java/mockito/mockito-2.28.2-r1.ebuild b/dev-java/mockito/mockito-2.28.2-r1.ebuild new file mode 100644 index 000000000000..6b413be4b92e --- /dev/null +++ b/dev-java/mockito/mockito-2.28.2-r1.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +MAVEN_ID="org.mockito:mockito-core:${PV}" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit java-pkg-2 java-pkg-simple + +DESCRIPTION="Mockito mock objects library core API and implementation" +HOMEPAGE="https://github.com/mockito/mockito" +SRC_URI="https://github.com/mockito/mockito/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${P}" + +LICENSE="MIT" +SLOT="2" +KEYWORDS="~amd64 ~arm64 ~ppc64" + +# Tests need a version of byte-buddy supporting Java 21. #930103 +CP_DEPEND=" + dev-java/asm:9 + >=dev-java/byte-buddy-1.15.10:0 + dev-java/hamcrest-core:1.3 + dev-java/junit:4 + dev-java/objenesis:0 + dev-java/opentest4j:0 +" + +DEPEND="${CP_DEPEND} + >=virtual/jdk-1.8:* + test? ( dev-java/assertj-core:3 ) +" + +RDEPEND="${CP_DEPEND} + >=virtual/jre-1.8:* +" + +# see https://bugs.gentoo.org/903897 +PATCHES=( + "${FILESDIR}/mockito-2.28.2-skip-failing-tests.patch" + "${FILESDIR}/mockito-2.28.2-fix-unused-stubbings-test.patch" +) + +JAVA_AUTOMATIC_MODULE_NAME="org.mockito" +JAVA_CLASSPATH_EXTRA="junit-4 opentest4j" +JAVA_SRC_DIR="src/main/java" + +JAVA_TEST_EXCLUDES=( + org.mockito.internal.junit.JUnitRuleTest # We run it in JAVA_TEST_RUN_ONLY + org.mockito.internal.util.reflection.DummyClassForTests # No runnable methods + org.mockito.internal.util.reflection.DummyParentClassForTests # No runnable methods + org.mockito.junit.TestableJUnitRunner # No runnable methods + org.mockitoutil.TestBase # No runnable methods +) +JAVA_TEST_GENTOO_CLASSPATH="assertj-core-3,junit-4" +JAVA_TEST_RUN_ONLY=( + # This needs to run separately, otherwise one of its 4 tests would fail. + org.mockito.internal.junit.JUnitRuleTest +) +JAVA_TEST_SRC_DIR="src/test/java" + +src_prepare() { + java-pkg-2_src_prepare + default + # dev-java/byte-buddy is built from byte-buddy-dep without shaded stuff. + sed \ + -e 's:net.bytebuddy.jar.asm:org.objectweb.asm:' \ + -i src/main/java/org/mockito/internal/creation/bytebuddy/MockMethodAdvice.java \ + -i src/main/java/org/mockito/internal/creation/bytebuddy/InlineBytecodeGenerator.java || die +} + +src_compile() { + java-pkg-simple_src_compile + mv target/classes/org/mockito/internal/creation/bytebuddy/inject/MockMethodDispatcher.{class,raw} || die + jar ufv mockito.jar -C target/classes org/mockito/internal/creation/bytebuddy/inject/MockMethodDispatcher.raw || die +} + +src_test() { + # Increasing number of test failures with higher Java versions + # Test failures are documented in https://bugs.gentoo.org/903897 + local vm_version="$(java-config -g PROVIDES_VERSION)" + if ver_test "${vm_version}" -ge 11; then + JAVA_TEST_EXCLUDES+=( + org.mockito.internal.stubbing.defaultanswers.ReturnsMocksTest + org.mockitousage.bugs.GenericsMockitoAnnotationsTest + ) + fi + if ver_test "${vm_version}" -ge 17; then + JAVA_TEST_EXCLUDES+=( + org.concurrentmockito.ThreadsRunAllTestsHalfManualTest + org.mockitousage.matchers.InvalidUseOfMatchersTest + org.mockitousage.serialization.DeepStubsSerializableTest + org.mockitousage.stubbing.StubbingWithDelegateTest + ) + JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.io=ALL-UNNAMED ) + JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/java.lang=ALL-UNNAMED ) + JAVA_TEST_EXTRA_ARGS+=( --add-opens=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED ) + fi + # First run what needs to run separately + java-pkg-simple_src_test + # And then the other tests + JAVA_TEST_RUN_ONLY="" + java-pkg-simple_src_test +} |
