Не удается выполнить тест Realm со слушателем для запуска - PullRequest
0 голосов
/ 25 февраля 2019

В настоящее время я пытаюсь запустить инструментальный тест Realm со слушателем.Я довольно новичок в Android и прочитал минимальную документацию Realm и ТАК вопросы, но на самом деле не могу понять это.

У меня есть тестовый класс Realm, который я подкласс для будущего использования

open class RealmInstrumentedUnitTest {

    lateinit var mockRealm: Realm

    @Before
    fun setup() {
        Looper.prepare()
        val testConfig = RealmConfiguration.Builder().inMemory().name("test-realm").build()
        Realm.setDefaultConfiguration(testConfig)
        this.mockRealm = Realm.getDefaultInstance()
    }

    @After
    @Throws(Exception::class)
    public fun tearDown() {
        Looper.loop()
        this.mockRealm.close()
    }
}

Затем я делаю подкласс предыдущего и реализую тест:

@Test
fun testOverlappingSessionDeletion() {

val realm = this.mockRealm
this.sessions = realm.where(Session::class.java).findAll() // monitor session deletions

this.sessions?.addChangeListener { t, changeSet ->

    val deletedSessions = realm.where(Session::class.java).`in`("id", changeSet.deletions.toTypedArray()).findAll()
    deletedSessions.forEach { it.cleanup() }

}
  • Я не могу понять, как настроить петлитель для его запуска
  • В этой конфигурации я получаю«Не удалось выполнить тест до завершения. Причина:« Сбой выполнения инструментария из-за «Процесс сбой». »
  • Если я поставлю Looper.loop() раньше, я получу бесконечный цикл

Как мне настроить это для правильной работы?

Большое спасибо

...