現在、反応しているネイティブプロジェクトで使用するためにAndroidライブラリを作成しています。私はjavascriptへのマップを発行する必要があるので、私は反応ネイティブのWriteableMapクラスを使用しています。残念なことに、このクラスは反応ブロックのSOをスタティックブロックにロードします。これはユニットテスト中にUnsatisfiedLinkErrorにつながります。私はJUnitとMockitoを使ってテストしています。単体テスト時のUnsatisfiedLinkError WritableNativeMap
マイコード:
@Override
public void onSomething() {
WritableMap params = Arguments.createMap();
//fill map
sendEvent("onChange", params);
}
エラー:
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)
私はユニットテストのためのWriteableMapをスタブについてのコメントを見た後Arguments.createMap()
方法を使用し始め、それが静的だと私はないことを好むだろう静的メソッドをスタブする必要があります。
ユニットテストを実行中にこのエラーを取り除く方法はありますか?