Java.lang.UnsatisfiedLinkError with Robolectric and Couchbase

I cannot get started using Robolectric module tests due to the following error that it has with couchbase db.

java.lang.UnsatisfiedLinkError: com.couchbase.lite.internal.database.sqlite.SQLiteConnection.nativeOpen(Ljava/lang/String;ILjava/lang/String;ZZ)J

This error occurs in my CouchbaseWrapper class when the syntax is

    // Get existing db with that name
    // or create a new one if it doesn't exist.
    database = manager.getDatabase(dbname);

If I do database = manager.getDatabase(dbname, true);, this step "passes", but other steps return NPE.

Here is my test file:

@RunWith(RobolectricTestRunner.class)
@Config(constants = BuildConfig.class)
public class OnBoardingPageOneTest {

private OnboardingActivity onboardingActivity;

@Before
public void setUp() {
    onboardingActivity = Robolectric.setupActivity(OnboardingActivity.class);
}

@Test
public void verifyElementsArePresent() {
    assertThat(onboardingActivity.findViewById(R.id.text_container), is(not(null)));
    assertThat(onboardingActivity.findViewById(R.id.intro_video_view), is(not(null)));
    assertThat(onboardingActivity.findViewById(R.id.play_button), is(not(null)));
    assertThat(onboardingActivity.findViewById(R.id.loading_progress), is(not(null)));
    }
}

Magazine

Library not found: /native/osx/x86_64/libsqlcipher.dylib
Library not found: /native/osx/x86_64/libsqlite3.dylib
Library not found: /native/osx/x86_64/libsqlcipher.dylib
Library not found: /native/osx/x86_64/libsqlite3.dylib

java.lang.UnsatisfiedLinkError: com.couchbase.lite.internal.database.sqlite.SQLiteConnection.nativeOpen(Ljava/lang/String;ILjava/lang/String;ZZ)J

at com.couchbase.lite.internal.database.sqlite.SQLiteConnection.nativeOpen(Native Method)
at com.couchbase.lite.internal.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:194)
at com.couchbase.lite.internal.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:178)
at com.couchbase.lite.internal.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:461)
at
+4
source share

Source: https://habr.com/ru/post/1649470/


All Articles