diff --git a/src/main/java/org/mockito/internal/creation/bytebuddy/SubclassBytecodeGenerator.java b/src/main/java/org/mockito/internal/creation/bytebuddy/SubclassBytecodeGenerator.java index 46ecb7868a..f67fdfc5a6 100644 --- a/src/main/java/org/mockito/internal/creation/bytebuddy/SubclassBytecodeGenerator.java +++ b/src/main/java/org/mockito/internal/creation/bytebuddy/SubclassBytecodeGenerator.java @@ -44,7 +44,6 @@ import net.bytebuddy.implementation.Implementation; import net.bytebuddy.implementation.attribute.MethodAttributeAppender; import net.bytebuddy.matcher.ElementMatcher; -import org.mockito.Answers; import org.mockito.codegen.InjectionBase; import org.mockito.exceptions.base.MockitoException; import org.mockito.internal.creation.bytebuddy.ByteBuddyCrossClassLoaderSerializationSupport.CrossClassLoaderSerializableMock; @@ -241,21 +240,11 @@ public Class mockClass(MockFeatures features) { .serialVersionUid(42L) .defineField("mockitoInterceptor", MockMethodInterceptor.class, PRIVATE) .implement(MockAccess.class) - .intercept(FieldAccessor.ofBeanProperty()); - - if (features.defaultAnswer != Answers.CALLS_REAL_METHODS) { - builder = - builder.method(isHashCode()) - .intercept(hashCode) - .method(isEquals()) - .intercept(equals); - } else { - builder = - builder.method(isHashCode()) - .intercept(dispatcher) - .method(isEquals()) - .intercept(dispatcher); - } + .intercept(FieldAccessor.ofBeanProperty()) + .method(isHashCode()) + .intercept(hashCode) + .method(isEquals()) + .intercept(equals); if (features.serializableMode == SerializableMode.ACROSS_CLASSLOADERS) { builder = builder.implement(CrossClassLoaderSerializableMock.class) diff --git a/src/main/java/org/mockito/internal/creation/bytebuddy/TypeCachingBytecodeGenerator.java b/src/main/java/org/mockito/internal/creation/bytebuddy/TypeCachingBytecodeGenerator.java index 5ce57b1115..625d7b795f 100644 --- a/src/main/java/org/mockito/internal/creation/bytebuddy/TypeCachingBytecodeGenerator.java +++ b/src/main/java/org/mockito/internal/creation/bytebuddy/TypeCachingBytecodeGenerator.java @@ -45,8 +45,7 @@ public Class mockClass(final MockFeatures params) { params.mockedType, params.interfaces, params.serializableMode, - params.stripAnnotations, - params.defaultAnswer), + params.stripAnnotations), () -> bytecodeGenerator.mockClass(params), BOOTSTRAP_LOCK); } catch (IllegalArgumentException exception) { @@ -86,18 +85,15 @@ private static class MockitoMockKey extends TypeCache.SimpleKey { private final SerializableMode serializableMode; private final boolean stripAnnotations; - private final Answer defaultAnswer; private MockitoMockKey( Class type, Set> additionalType, SerializableMode serializableMode, - boolean stripAnnotations, - Answer defaultAnswer) { + boolean stripAnnotations) { super(type, additionalType); this.serializableMode = serializableMode; this.stripAnnotations = stripAnnotations; - this.defaultAnswer = defaultAnswer; } @Override @@ -113,8 +109,7 @@ public boolean equals(Object object) { } MockitoMockKey that = (MockitoMockKey) object; return stripAnnotations == that.stripAnnotations - && serializableMode.equals(that.serializableMode) - && Objects.equals(defaultAnswer, that.defaultAnswer); + && serializableMode.equals(that.serializableMode); } @Override @@ -122,7 +117,6 @@ public int hashCode() { int result = super.hashCode(); result = 31 * result + (stripAnnotations ? 1 : 0); result = 31 * result + serializableMode.hashCode(); - result = 31 * result + Objects.hashCode(defaultAnswer); return result; } }