summaryrefslogtreecommitdiff
path: root/dev-java
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-12-08 18:52:03 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-12-08 18:52:03 +0000
commit3bbb7e647256e729d667a8fb4943f21233ad72a8 (patch)
tree83f8d810198ba8eaaf5a98e503a4ec763c3706ec /dev-java
parent82d9bcd6fb9179a51d8655ae6fb9c7fb337f3c72 (diff)
downloadbaldeagleos-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/Manifest1
-rw-r--r--dev-java/byte-buddy/byte-buddy-1.15.10.ebuild144
-rw-r--r--dev-java/byte-buddy/files/byte-buddy-1.15.10-Skip-testIgnoreExistingField.patch34
-rw-r--r--dev-java/javassist/Manifest1
-rw-r--r--dev-java/javassist/files/javassist-3.29.2-gentoo.patch46
-rw-r--r--dev-java/javassist/javassist-3.29.2.ebuild42
-rw-r--r--dev-java/javassist/javassist-3.30.2.ebuild54
-rw-r--r--dev-java/mockito/mockito-2.28.2-r1.ebuild106
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
+}