diff --git a/tools/chatgui-android/router-tests/src/main/kotlin/android/os/HostOs.kt b/tools/chatgui-android/router-tests/src/main/kotlin/android/os/HostOs.kt index 27c38b69..7873045d 100644 --- a/tools/chatgui-android/router-tests/src/main/kotlin/android/os/HostOs.kt +++ b/tools/chatgui-android/router-tests/src/main/kotlin/android/os/HostOs.kt @@ -6,7 +6,7 @@ import android.media.AudioAttributes /** Host-модель SDK/главной очереди: callbacks и их доставку тест контролирует явно, без настоящего Android Looper. */ object Build { object VERSION { var SDK_INT = 36 } - object VERSION_CODES { const val O = 26; const val P = 28; const val S = 31; const val UPSIDE_DOWN_CAKE = 34 } + object VERSION_CODES { const val O = 26; const val P = 28; const val S = 31; const val TIRAMISU = 33; const val UPSIDE_DOWN_CAKE = 34 } } class Looper private constructor() { private data class Task(val handler: Handler, val runnable: Runnable, val deadline: Long) @@ -37,7 +37,10 @@ class Handler(val looper: Looper) { fun postDelayed(task: Runnable, delay: Long): Boolean = !rejectDelayed && looper.post(this, task, delay) fun removeCallbacks(task: Runnable) = looper.remove(this, task) } -object SystemClock { fun elapsedRealtime(): Long = System.nanoTime() / 1_000_000 } +object SystemClock { + fun elapsedRealtime(): Long = System.nanoTime() / 1_000_000 + fun elapsedRealtimeNanos(): Long = System.nanoTime() +} /** Конечные vibration pulses без аппаратных эффектов; тест может отказать на любом импульсе. */ class VibrationEffect private constructor(val timings: LongArray, val repeat: Int) { diff --git a/tools/chatgui-android/router-tests/src/main/kotlin/android/os/HostPower.kt b/tools/chatgui-android/router-tests/src/main/kotlin/android/os/HostPower.kt index 84ecc44a..e2ebf1eb 100644 --- a/tools/chatgui-android/router-tests/src/main/kotlin/android/os/HostPower.kt +++ b/tools/chatgui-android/router-tests/src/main/kotlin/android/os/HostPower.kt @@ -7,6 +7,7 @@ class PowerManager { const val ACQUIRE_CAUSES_WAKEUP = 0x10000000; const val ON_AFTER_RELEASE = 0x20000000 } var failures = emptySet() + var isInteractive = true var ignoringBatteryOptimizations = false val optimizationQueries = mutableListOf() val locks = mutableListOf()