Merge "fix FileNotFound exception when attempting to read bubble xml" into rvc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
750b4c93ec
@@ -54,6 +54,7 @@ class BubblePersistentRepository @Inject constructor(
|
||||
|
||||
fun readFromDisk(): List<BubbleEntity> {
|
||||
synchronized(bubbleFile) {
|
||||
if (!bubbleFile.exists()) return emptyList()
|
||||
try { return bubbleFile.openRead().use(::readXml) } catch (e: Throwable) {
|
||||
Log.e(TAG, "Failed to open bubble file", e)
|
||||
}
|
||||
|
||||
@@ -20,6 +20,8 @@ import android.testing.AndroidTestingRunner
|
||||
import androidx.test.filters.SmallTest
|
||||
import com.android.systemui.SysuiTestCase
|
||||
import junit.framework.Assert.assertEquals
|
||||
import junit.framework.Assert.assertNotNull
|
||||
import junit.framework.Assert.assertTrue
|
||||
import org.junit.Before
|
||||
import org.junit.Test
|
||||
import org.junit.runner.RunWith
|
||||
@@ -42,6 +44,11 @@ class BubblePersistentRepositoryTest : SysuiTestCase() {
|
||||
|
||||
@Test
|
||||
fun testReadWriteOperation() {
|
||||
// Verify read before write doesn't cause FileNotFoundException
|
||||
val actual = repository.readFromDisk()
|
||||
assertNotNull(actual)
|
||||
assertTrue(actual.isEmpty())
|
||||
|
||||
repository.persistsToDisk(bubbles)
|
||||
assertEquals(bubbles, repository.readFromDisk())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user