fix(download): preserve SAF and defer background starts

This commit is contained in:
zarzet
2026-08-09 05:23:47 +07:00
parent 2612da81c3
commit a59c749089
9 changed files with 271 additions and 33 deletions
@@ -0,0 +1,29 @@
package com.zarz.spotiflac
import org.junit.Assert.assertEquals
import org.junit.Assert.assertFalse
import org.junit.Assert.assertTrue
import org.junit.Test
class ForegroundServiceStartPolicyTest {
@Test
fun mapsAndroidForegroundStartDenialsToStableCode() {
val error = IllegalStateException(
"startForegroundService() not allowed due to mAllowStartForeground false",
)
assertTrue(ForegroundServiceStartPolicy.isStartNotAllowed(error))
assertEquals(
ForegroundServiceStartPolicy.START_NOT_ALLOWED_CODE,
ForegroundServiceStartPolicy.errorCode(error),
)
}
@Test
fun leavesUnrelatedPlatformFailuresGeneric() {
val error = IllegalStateException("network unavailable")
assertFalse(ForegroundServiceStartPolicy.isStartNotAllowed(error))
assertEquals("ERROR", ForegroundServiceStartPolicy.errorCode(error))
}
}