Don't fail the Flicker test validation when we have no transition defined but are using NoTraceMonitors
Currently can't run a Flicker test that uses pre-prerecorded traces without leading to a test validation error.
Bug: 270949117
Test: atest FlickerLibTest
Change-Id: Ic498784042ead45e8215e7e8b869034c03eb37e4
diff --git a/libraries/flicker/src/android/tools/device/flicker/legacy/runner/TransitionExecutionRule.kt b/libraries/flicker/src/android/tools/device/flicker/legacy/runner/TransitionExecutionRule.kt
index 36aa4b8..91e4fc4 100644
--- a/libraries/flicker/src/android/tools/device/flicker/legacy/runner/TransitionExecutionRule.kt
+++ b/libraries/flicker/src/android/tools/device/flicker/legacy/runner/TransitionExecutionRule.kt
@@ -25,6 +25,7 @@
import android.tools.device.flicker.legacy.IFlickerTestData
import android.tools.device.traces.getCurrentState
import android.tools.device.traces.io.ResultWriter
+import android.tools.device.traces.monitors.NoTraceMonitor
import android.tools.device.traces.now
import android.tools.device.traces.parsers.WindowManagerStateHelper
import android.util.EventLog
@@ -108,7 +109,9 @@
}
private fun doValidate() {
- require(commands.isNotEmpty()) { EMPTY_TRANSITIONS_ERROR }
+ require(commands.isNotEmpty() || flicker.traceMonitors.all { it is NoTraceMonitor }) {
+ EMPTY_TRANSITIONS_ERROR
+ }
}
private fun doValidateTag(tag: String) {