我正在尝试测试自定义内容提供者查询方法。
以下是在contentProvider内部创建光标的代码块:
@VisibleForTesting
@Throws(AuthException::class)
fun createUserNameMatrixCursor(): MatrixCursor {
val user = userInteractor.user.blockingFirst()
val matrixCursor = MatrixCursor(arrayOf(FIELD_FULL_NAME))
matrixCursor.addRow(arrayOf(
user.fullName
))
return matrixCursor
}
这是一个测试:
@Test
fun userNameTest() {
val user = User()
user.fullName = "Nikita Borisovich Djigurda"
whenever(userInteractor.user)
.thenReturn(Observable.just(user))
val cursor = contentProvider.createUserNameMatrixCursor()
cursor.moveToFirst()
val resultName = cursor.getString(cursor.getColumnIndex(AuthContentProvider.FIELD_FULL_NAME))
Assert.assertEquals(resultName, user.fullName)
}
但是光标不包含任何值。计数== 0。 contentProvider有效。我在调试模式下获得了价值。为什么测试不起作用?为什么矩阵不包含任何值?