Toggle diff (380 lines)
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 9940641fe9..599cdc0ace 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -11023,30 +11023,27 @@ (define-public java-byte-buddy-dep
(define-public java-powermock-reflect
(package
(name "java-powermock-reflect")
- (version "1.7.3")
+ (version "2.0.9")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/powermock/powermock/"
- "archive/powermock-" version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/powermock/powermock")
+ (commit (string-append "powermock-" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0sbgi5vqq7k72wzcdjb20s370vyd4hsbnx71pzb8ishml3gy7fwy"))
+ "03y8szi9iwxnv431z2mn2ivc1ak30vcvfvkyrwmfq7wq93bj2c5v"))
(patches
(search-patches "java-powermock-fix-java-files.patch"))))
(build-system ant-build-system)
(arguments
`(#:jar-name "java-powermock-reflect.jar"
- #:jdk ,icedtea-8
#:source-dir "powermock-reflect/src/main/java"
#:test-dir "powermock-reflect/src/test"))
(inputs
- (list java-objenesis))
+ (list java-asm-9 java-objenesis))
(native-inputs
- `(("junit" ,java-junit)
- ("cglib" ,java-cglib)
- ("hamcrest" ,java-hamcrest-core)
- ("assertj" ,java-assertj)))
+ (list java-assertj java-cglib java-hamcrest-core java-junit))
(home-page "https://github.com/powermock/powermock")
(synopsis "Mock library extension framework")
(description "PowerMock is a framework that extends other mock libraries
@@ -11075,12 +11072,12 @@ (define-public java-powermock-core
"build/classes")
#t)))))
(inputs
- `(("reflect" ,java-powermock-reflect)
- ("javassist" ,java-jboss-javassist)))
+ (list java-asm-9
+ java-byte-buddy-dep
+ java-jboss-javassist
+ java-powermock-reflect))
(native-inputs
- `(("junit" ,java-junit)
- ("assertj" ,java-assertj)
- ("mockito" ,java-mockito-1)))))
+ (list java-assertj java-mockito-1 java-junit))))
(define-public java-powermock-api-support
(package
@@ -11093,8 +11090,7 @@ (define-public java-powermock-api-support
#:source-dir "powermock-api/powermock-api-support/src/main/java"
#:tests? #f)); no tests
(inputs
- `(("core" ,java-powermock-core)
- ("reflect" ,java-powermock-reflect)))))
+ (list java-powermock-core java-powermock-reflect))))
(define-public java-powermock-modules-junit4-common
(package
@@ -11107,11 +11103,11 @@ (define-public java-powermock-modules-junit4-common
#:source-dir "powermock-modules/powermock-module-junit4-common/src/main/java"
#:test-dir "powermock-modules/powermock-module-junit4-common/src/test"))
(inputs
- `(("core" ,java-powermock-core)
- ("easymock" ,java-easymock)
- ("reflect" ,java-powermock-reflect)
- ("hamcrest" ,java-hamcrest-core)
- ("cglib" ,java-cglib)))))
+ (list java-cglib
+ java-easymock
+ java-hamcrest-core
+ java-powermock-core
+ java-powermock-reflect))))
(define-public java-powermock-modules-junit4
(package
@@ -11120,7 +11116,7 @@ (define-public java-powermock-modules-junit4
(build-system ant-build-system)
(arguments
`(#:jar-name "java-powermock-modules-junit4.jar"
- #:jdk ,icedtea-8
+ #:tests? #f; require easymock 4, which introduces a loop with testng
#:source-dir "powermock-modules/powermock-module-junit4/src/main/java"
#:test-dir "powermock-modules/powermock-module-junit4/src/test"
#:phases
@@ -11133,15 +11129,15 @@ (define-public java-powermock-modules-junit4
(("4.12") "4.12-SNAPSHOT"))
#t)))))
(inputs
- `(("core" ,java-powermock-core)
- ("reflect" ,java-powermock-reflect)
- ("common" ,java-powermock-modules-junit4-common)
- ("cglib" ,java-cglib)))
+ (list java-cglib
+ java-powermock-core
+ java-powermock-reflect
+ java-powermock-modules-junit4-common))
(native-inputs
- `(("easymock" ,java-easymock)
- ("hamcrest" ,java-hamcrest-core)
- ("objenesis" ,java-objenesis)
- ("junit" ,java-junit)))))
+ (list java-easymock
+ java-hamcrest-core
+ java-junit
+ java-objenesis))))
(define-public java-powermock-api-easymock
(package
@@ -11164,11 +11160,11 @@ (define-public java-powermock-api-easymock
(("\\(\\(MockClassLoader\\) classLoader\\).*;") ";")))
#t)))))
(inputs
- `(("core" ,java-powermock-core)
- ("easymock" ,java-easymock)
- ("reflect" ,java-powermock-reflect)
- ("support" ,java-powermock-api-support)
- ("cglib" ,java-cglib)))))
+ (list java-cglib
+ java-easymock
+ java-powermock-api-support
+ java-powermock-core
+ java-powermock-reflect))))
(define-public java-jboss-jms-api-spec
(package
diff --git a/gnu/packages/patches/java-powermock-fix-java-files.patch b/gnu/packages/patches/java-powermock-fix-java-files.patch
index 6b95818138..ca99749a43 100644
--- a/gnu/packages/patches/java-powermock-fix-java-files.patch
+++ b/gnu/packages/patches/java-powermock-fix-java-files.patch
@@ -1,17 +1,130 @@
This patch fixes build issues caused by the java compiler not finding the
correct types on some statements.
-From 1ac84b58b4383fa118d98c35956d722d11cf449e Mon Sep 17 00:00:00 2001
+From 10ce6e0e30bbaf22212abc77f5d644c074df6068 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
-Date: Tue, 22 Aug 2017 20:40:27 +0200
+Date: Sat, 25 Feb 2023 18:00:13 +0100
Subject: [PATCH] Fix java files.
---
- .../internal/impl/DelegatingPowerMockRunner.java | 13 +++++++---
- .../java/org/powermock/reflect/WhiteBoxTest.java | 30 +++++++++++-----------
- .../reflect/internal/proxy/ClassFactory.java | 6 ++---
- 3 files changed, 27 insertions(+), 22 deletions(-)
+ .../ConditionalStateStackManipulation.java | 6 ++--
+ .../org/powermock/core/bytebuddy/Frame.java | 2 +-
+ .../core/bytebuddy/MaxLocalsExtractor.java | 6 ++--
+ .../core/bytebuddy/MockGetawayCall.java | 2 +-
+ .../core/bytebuddy/PrimitiveBoxing.java | 4 +--
+ .../agent/DefinalizingClassTransformer.java | 4 +--
+ .../agent/DefinalizingClassVisitor.java | 6 ++--
+ .../impl/DelegatingPowerMockRunner.java | 13 +++++---
+ .../org/powermock/reflect/WhiteBoxTest.java | 32 +++++++++----------
+ .../reflect/internal/proxy/ClassFactory.java | 6 ++--
+ 10 files changed, 43 insertions(+), 38 deletions(-)
+diff --git a/powermock-core/src/main/java/org/powermock/core/bytebuddy/ConditionalStateStackManipulation.java b/powermock-core/src/main/java/org/powermock/core/bytebuddy/ConditionalStateStackManipulation.java
+index fa23a3f..1fa4b94 100644
+--- a/powermock-core/src/main/java/org/powermock/core/bytebuddy/ConditionalStateStackManipulation.java
++++ b/powermock-core/src/main/java/org/powermock/core/bytebuddy/ConditionalStateStackManipulation.java
+@@ -20,9 +20,9 @@ package org.powermock.core.bytebuddy;
+
+ import net.bytebuddy.implementation.Implementation.Context;
+ import net.bytebuddy.implementation.bytecode.StackManipulation;
+-import net.bytebuddy.jar.asm.Label;
+-import net.bytebuddy.jar.asm.MethodVisitor;
+-import net.bytebuddy.jar.asm.Opcodes;
++import org.objectweb.asm.Label;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Opcodes;
+
+ public class ConditionalStateStackManipulation implements StackManipulation {
+
+diff --git a/powermock-core/src/main/java/org/powermock/core/bytebuddy/Frame.java b/powermock-core/src/main/java/org/powermock/core/bytebuddy/Frame.java
+index 8ada262..adfc218 100644
+--- a/powermock-core/src/main/java/org/powermock/core/bytebuddy/Frame.java
++++ b/powermock-core/src/main/java/org/powermock/core/bytebuddy/Frame.java
+@@ -24,7 +24,7 @@ import net.bytebuddy.description.method.ParameterDescription.InDefinedShape;
+ import net.bytebuddy.description.method.ParameterList;
+ import net.bytebuddy.description.type.TypeDescription.Generic;
+ import net.bytebuddy.implementation.bytecode.StackSize;
+-import net.bytebuddy.jar.asm.Opcodes;
++import org.objectweb.asm.Opcodes;
+ import net.bytebuddy.utility.CompoundList;
+
+ import java.util.ArrayList;
+diff --git a/powermock-core/src/main/java/org/powermock/core/bytebuddy/MaxLocalsExtractor.java b/powermock-core/src/main/java/org/powermock/core/bytebuddy/MaxLocalsExtractor.java
+index 6b5cddd..8fe1936 100644
+--- a/powermock-core/src/main/java/org/powermock/core/bytebuddy/MaxLocalsExtractor.java
++++ b/powermock-core/src/main/java/org/powermock/core/bytebuddy/MaxLocalsExtractor.java
+@@ -19,9 +19,9 @@
+ package org.powermock.core.bytebuddy;
+
+ import net.bytebuddy.description.method.MethodDescription;
+-import net.bytebuddy.jar.asm.ClassVisitor;
+-import net.bytebuddy.jar.asm.MethodVisitor;
+-import net.bytebuddy.jar.asm.Opcodes;
++import org.objectweb.asm.ClassVisitor;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Opcodes;
+
+ public class MaxLocalsExtractor extends ClassVisitor {
+
+diff --git a/powermock-core/src/main/java/org/powermock/core/bytebuddy/MockGetawayCall.java b/powermock-core/src/main/java/org/powermock/core/bytebuddy/MockGetawayCall.java
+index db84196..84942f8 100644
+--- a/powermock-core/src/main/java/org/powermock/core/bytebuddy/MockGetawayCall.java
++++ b/powermock-core/src/main/java/org/powermock/core/bytebuddy/MockGetawayCall.java
+@@ -27,7 +27,7 @@ import net.bytebuddy.implementation.bytecode.StackManipulation;
+ import net.bytebuddy.implementation.bytecode.collection.ArrayFactory;
+ import net.bytebuddy.implementation.bytecode.constant.ClassConstant;
+ import net.bytebuddy.implementation.bytecode.member.MethodInvocation;
+-import net.bytebuddy.jar.asm.MethodVisitor;
++import org.objectweb.asm.MethodVisitor;
+ import org.powermock.core.bytebuddy.Variable.VariableAccess;
+ import org.powermock.reflect.internal.WhiteboxImpl;
+
+diff --git a/powermock-core/src/main/java/org/powermock/core/bytebuddy/PrimitiveBoxing.java b/powermock-core/src/main/java/org/powermock/core/bytebuddy/PrimitiveBoxing.java
+index e200b22..ae1036b 100644
+--- a/powermock-core/src/main/java/org/powermock/core/bytebuddy/PrimitiveBoxing.java
++++ b/powermock-core/src/main/java/org/powermock/core/bytebuddy/PrimitiveBoxing.java
+@@ -24,8 +24,8 @@ import net.bytebuddy.description.type.TypeDescription.ForLoadedType;
+ import net.bytebuddy.implementation.Implementation;
+ import net.bytebuddy.implementation.bytecode.StackManipulation;
+ import net.bytebuddy.implementation.bytecode.StackSize;
+-import net.bytebuddy.jar.asm.MethodVisitor;
+-import net.bytebuddy.jar.asm.Opcodes;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Opcodes;
+
+ public enum PrimitiveBoxing implements StackManipulation{
+
+diff --git a/powermock-modules/powermock-module-javaagent/src/main/java/org/powermock/modules/agent/DefinalizingClassTransformer.java b/powermock-modules/powermock-module-javaagent/src/main/java/org/powermock/modules/agent/DefinalizingClassTransformer.java
+index e8eef7a..01d0bcb 100644
+--- a/powermock-modules/powermock-module-javaagent/src/main/java/org/powermock/modules/agent/DefinalizingClassTransformer.java
++++ b/powermock-modules/powermock-module-javaagent/src/main/java/org/powermock/modules/agent/DefinalizingClassTransformer.java
+@@ -16,8 +16,8 @@
+
+ package org.powermock.modules.agent;
+
+-import net.bytebuddy.jar.asm.ClassReader;
+-import net.bytebuddy.jar.asm.ClassWriter;
++import org.objectweb.asm.ClassReader;
++import org.objectweb.asm.ClassWriter;
+
+ import java.lang.instrument.ClassFileTransformer;
+ import java.security.ProtectionDomain;
+diff --git a/powermock-modules/powermock-module-javaagent/src/main/java/org/powermock/modules/agent/DefinalizingClassVisitor.java b/powermock-modules/powermock-module-javaagent/src/main/java/org/powermock/modules/agent/DefinalizingClassVisitor.java
+index 3bb80c3..9aada60 100644
+--- a/powermock-modules/powermock-module-javaagent/src/main/java/org/powermock/modules/agent/DefinalizingClassVisitor.java
++++ b/powermock-modules/powermock-module-javaagent/src/main/java/org/powermock/modules/agent/DefinalizingClassVisitor.java
+@@ -1,8 +1,8 @@
+ package org.powermock.modules.agent;
+
+-import net.bytebuddy.jar.asm.ClassVisitor;
+-import net.bytebuddy.jar.asm.MethodVisitor;
+-import net.bytebuddy.jar.asm.Opcodes;
++import org.objectweb.asm.ClassVisitor;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Opcodes;
+
+ class DefinalizingClassVisitor extends ClassVisitor {
+
diff --git a/powermock-modules/powermock-module-junit4/src/main/java/org/powermock/modules/junit4/internal/impl/DelegatingPowerMockRunner.java b/powermock-modules/powermock-module-junit4/src/main/java/org/powermock/modules/junit4/internal/impl/DelegatingPowerMockRunner.java
index 301f854..caecbbd 100644
--- a/powermock-modules/powermock-module-junit4/src/main/java/org/powermock/modules/junit4/internal/impl/DelegatingPowerMockRunner.java
@@ -39,7 +152,7 @@ index 301f854..caecbbd 100644
if (testClass.isAnnotationPresent(PowerMockRunnerDelegate.class)
&& JUnitVersion.isGreaterThanOrEqualTo("4.5")) {
diff --git a/powermock-reflect/src/test/java/org/powermock/reflect/WhiteBoxTest.java b/powermock-reflect/src/test/java/org/powermock/reflect/WhiteBoxTest.java
-index bf1e2e3..0d60487 100644
+index acb3154..8c24fbc 100644
--- a/powermock-reflect/src/test/java/org/powermock/reflect/WhiteBoxTest.java
+++ b/powermock-reflect/src/test/java/org/powermock/reflect/WhiteBoxTest.java
@@ -248,7 +248,7 @@ public class WhiteBoxTest {
@@ -47,126 +160,133 @@ index bf1e2e3..0d60487 100644
@Test
public void testMethodWithPrimitiveAndWrappedInt_primtive_wrapped() throws Exception {
- assertEquals(17, Whitebox.invokeMethod(new ClassWithPrivateMethods(), "methodWithPrimitiveAndWrappedInt",
-+ assertEquals((Integer)17, Whitebox.invokeMethod(new ClassWithPrivateMethods(), "methodWithPrimitiveAndWrappedInt",
++ assertEquals(17, (int) Whitebox.invokeMethod(new ClassWithPrivateMethods(), "methodWithPrimitiveAndWrappedInt",
new Class[]{int.class, Integer.class}, 9, Integer.valueOf(8)));
}
-@@ -257,7 +257,7 @@ public class WhiteBoxTest {
+@@ -257,13 +257,13 @@ public class WhiteBoxTest {
int expected = 123;
Whitebox.setInternalState(ClassWithInternalState.class, "staticState", expected);
assertEquals(expected, ClassWithInternalState.getStaticState());
- assertEquals(expected, Whitebox.getInternalState(ClassWithInternalState.class, "staticState"));
-+ assertEquals(expected, (int)Whitebox.getInternalState(ClassWithInternalState.class, "staticState"));
++ assertEquals(expected, (int) Whitebox.getInternalState(ClassWithInternalState.class, "staticState"));
}
@Test
-@@ -334,25 +334,25 @@ public class WhiteBoxTest {
+ public void testStaticFinalPrimitiveState() {
+ Whitebox.setInternalState(ClassWithInternalState.class, "staticFinalIntState", 123);
+- assertEquals(123, Whitebox.getInternalState(ClassWithInternalState.class, "staticFinalIntState"));
++ assertEquals(123, (int) Whitebox.getInternalState(ClassWithInternalState.class, "staticFinalIntState"));
+ }
+
+ @Test
+@@ -330,25 +330,25 @@ public class WhiteBoxTest {
@Test
public void testInvokeVarArgsMethod_multipleValues() throws Exception {
ClassWithPrivateMethods tested = new ClassWithPrivateMethods();
- assertEquals(6, Whitebox.invokeMethod(tested, "varArgsMethod", 1, 2, 3));
-+ assertEquals(6, (int)Whitebox.invokeMethod(tested, "varArgsMethod", 1, 2, 3));
++ assertEquals(6, (int) Whitebox.invokeMethod(tested, "varArgsMethod", 1, 2, 3));
}
@Test
public void testInvokeVarArgsMethod_noArguments() throws Exception {
ClassWithPrivateMethods tested = new ClassWithPrivateMethods();
- assertEquals(0, Whitebox.invokeMethod(tested, "varArgsMethod"));
-+ assertEquals(0, (int)Whitebox.invokeMethod(tested, "varArgsMethod"));
++ assertEquals(0, (int) Whitebox.invokeMethod(tested, "varArgsMethod"));
}
@Test
public void testInvokeVarArgsMethod_oneArgument() throws Exception {
ClassWithPrivateMethods tested = new ClassWithPrivateMethods();
- assertEquals(4, Whitebox.invokeMethod(tested, "varArgsMethod", 2));
-+ assertEquals(4, (int)Whitebox.invokeMethod(tested, "varArgsMethod", 2));
++ assertEquals(4, (int) Whitebox.invokeMethod(tested, "varArgsMethod", 2));
}
@Test
public void testInvokeVarArgsMethod_invokeVarArgsWithOneArgument() throws Exception {
ClassWithPrivateMethods tested = new ClassWithPrivateMethods();
- assertEquals(1, Whitebox.invokeMethod(tested, "varArgsMethod", new Class<?>[]{int[].class}, 1));
-+ assertEquals(1, (int)Whitebox.invokeMethod(tested, "varArgsMethod", new Class<?>[]{int[].class}, 1));
++ assertEquals(1, (int) Whitebox.invokeMethod(tested, "varArgsMethod", new Class<?>[]{int[].class}, 1));
}
@Test
-@@ -376,7 +376,7 @@ public class WhiteBoxTest {
+@@ -372,7 +372,7 @@ public class WhiteBoxTest {
ClassWithChildThatHasInternalState tested = new ClassWithChildThatHasInternalState() {
};
Whitebox.setInternalState(tested, fieldName, value);
- assertEquals(value, Whitebox.getInternalState(tested, fieldName));
-+ assertEquals(value, (int)Whitebox.getInternalState(tested, fieldName));
++ assertEquals(value, (int) Whitebox.getInternalState(tested, fieldName));
}
@Test
-@@ -387,8 +387,8 @@ public class WhiteBoxTest {
+@@ -383,8 +383,8 @@ public class WhiteBoxTest {
ClassWithChildThatHasInternalState tested = new ClassWithChildThatHasInternalState() {
};
Whitebox.setInternalState(tested, fieldName, value);
- assertEquals(value, Whitebox.getInternalState(tested, fieldName));
- assertEquals(-1, Whitebox.getInternalState(tested, fieldName, ClassWithInternalState.class));
-+ assertEquals(value, (int)Whitebox.getInternalState(tested, fieldName));
-+ assertEquals(-1, (int)Whitebox.getInternalState(tested, fieldName, ClassWithInternalState.class));
++ assertEquals(value, (int) Whitebox.getInternalState(tested, fieldName));
++ assertEquals(-1, (int) Whitebox.getInternalState(tested, fieldName, ClassWithInternalState.class));
}
@Test(expected = IllegalArgumentException.class)
-@@ -398,7 +398,7 @@ public class WhiteBoxTest {
+@@ -394,7 +394,7 @@ public class WhiteBoxTest {
ClassWithChildThatHasInternalState tested = new ClassWithChildThatHasInternalState() {