Distinguish unavailable radio signaling from an occupied call slot

This commit is contained in:
evgeny committed 2026-10-29 13:34:23 +01:00
1 parent 8100ea728e
commit 16a9bee8f3
1 file changed
+10
@@ -10,6 +10,7 @@ import android.os.Looper
import android.widget.Toast
import androidx.core.app.NotificationCompat
import com.utun.chat.ChatApplication
import com.utun.chat.R
import java.nio.ByteBuffer
import java.nio.ByteOrder
import java.util.concurrent.atomic.AtomicReference
@@ -333,4 +334,13 @@ class RadioCallLifecycleTest {
assertTrue(RadioCallController.busy())
emit(pending.id, 1, incoming = false); assertEquals(pending.id, state?.id)
}
@Test fun stoppedCoreReportsUnavailableAndAnOngoingPhoneCallReportsBusy() {
RadioCallController.setVisible(true); NativeLib.ready = false
RadioCallController.start("7", 99)
assertEquals("en:${R.string.radio_call_unavailable}", Toast.shown.last()); assertTrue(calls.isEmpty())
NativeLib.ready = true; CallController.state.value = CallController.State(ongoing = true)
RadioCallController.start("7", 99)
assertEquals("en:${R.string.radio_call_busy}", Toast.shown.last()); assertTrue(calls.isEmpty())
}
}