Je suis en train de créer une bibliothèque Android à utiliser dans un projet natif. J'ai besoin d'émettre une carte en javascript, donc j'utilise la classe WriteableMap de react native. Malheureusement, la classe charge le SO de reactnativejni dans un bloc statique, ce qui conduit à une UnsuppiedLinkError lors des tests unitaires. J'utilise JUnit et Mockito pour tester.UnsatisfiedLinkError lors du test unitaire WritableNativeMap
Mon code:
@Override
public void onSomething() {
WritableMap params = Arguments.createMap();
//fill map
sendEvent("onChange", params);
}
L'erreur:
java.lang.UnsatisfiedLinkError: no reactnativejni in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1857)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1119)
at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:172)
at com.facebook.react.bridge.NativeMap.<clinit>(NativeMap.java:23)
at com.facebook.react.bridge.Arguments.createMap(Arguments.java:29)
at me.MyClass.onSomething(myClass.java:23)
je commencé à utiliser la méthode Arguments.createMap()
après avoir vu un commentaire à propos stubbing WriteableMap pour les tests unitaires, mais il est statique et je préférerais ne pas avoir à bout d'une méthode statique.
Y a-t-il un moyen de se débarrasser de cette erreur lors des tests unitaires?