Ich teste eine Klasse TestMe
mit EasyMock und eine ihrer Methoden (zB method(N n)
) erwartet einen Parameter vom Typ N
, der eine native Methode hat (zB nativeMethod()
).
method()
muss irgendwann N.nativeMethod()
aufrufen, und das Problem, das ich habe, ist, dass mein Easymock Mock-Objekt für N die native Methode nicht überschreiben kann. Ich besitze keine Klasse N, aber ich kann TestMe
in irgendeiner Weise umgestalten.
Ich habe beschlossen, meine eigene Klasse FakeN extends N
zu erstellen, die nativeMethod
außer Kraft setzt, um nichts zu tun:
Aber während der Compiler nicht meckert, erscheint beim Ausführen des Tests N.nativeMethod()
als derjenige, der aufgerufen wird, und nicht FakeN
s Version.
Gibt es hier einen Workaround, den ich verwenden kann?
Tags und Links java android override native-methods easymock