Sqlite Singleton вызывает проблемы с Robolectric - PullRequest
0 голосов
/ 25 октября 2018

У меня достаточно стандартная настройка проекта, но у меня возникают проблемы с использованием некоторых моих модульных тестов.У меня есть RxJava для наблюдаемых, когда я запускаю свои модульные тесты, и я вижу сбои с моей интеграцией Sqlite DB.

Мой класс SQLiteHelper работает как синглтон (getInstance()).Когда я запускаю свои проекты, используя forkEvery = 1, в результате чего для каждого теста запускается новая JVM, все работает нормально.Однако, как только я перестаю это делать, я начинаю получать ошибки в своих тестах, потому что Sqlite занят или заблокирован, и я вижу такие ошибки

com.myproject.activities.ActivityTest > testButtonClicked FAILED
android.database.sqlite.SQLiteDatabaseLockedException at ActivityTest.java:477
    Caused by: java.util.concurrent.ExecutionException at ActivityTest.java:477
        Caused by: com.almworks.sqlite4java.SQLiteBusyException

Кажется, что ни одно из изменений, которые я делаю,чем запуск одной JVM за один раз, может повлиять на это.Есть ли лучший способ исправить это?

...