Fix relaunch at the final screen

Bug: 161506936
Test: See repro step of b/161506936
Change-Id: I41ecf3cd7a0d4889b4dbb69a4c5cb0484ed9703a
diff --git a/apps/CtsVerifier/src/com/android/cts/verifier/OrderedTestActivity.java b/apps/CtsVerifier/src/com/android/cts/verifier/OrderedTestActivity.java
index d24fdb7..1e5eb57 100644
--- a/apps/CtsVerifier/src/com/android/cts/verifier/OrderedTestActivity.java
+++ b/apps/CtsVerifier/src/com/android/cts/verifier/OrderedTestActivity.java
@@ -63,8 +63,7 @@
     @Override
     protected void onStart() {
         super.onStart();
-
-        mTests[mTestIndex].run();
+        processCurrentTest();
     }
 
     /** Returns a list of tests to run in order. */
@@ -80,16 +79,7 @@
     protected void succeed() {
         runOnUiThread(() -> {
             mTestIndex++;
-            if (mTestIndex < mTests.length) {
-                mTests[mTestIndex].run();
-            } else {
-                // On test completion, hide "next" and "fail" buttons, and show "pass" button
-                // instead.
-                mInstructions.setText(R.string.tests_completed_successfully);
-                mNextButton.setVisibility(View.GONE);
-                findViewById(R.id.pass_button).setVisibility(View.VISIBLE);
-                findViewById(R.id.fail_button).setVisibility(View.GONE);
-            }
+            processCurrentTest();
         });
     }
 
@@ -97,6 +87,22 @@
         Toast.makeText(this, stringResId, Toast.LENGTH_SHORT).show();
     }
 
+    /**
+     * Must be invoked on the main thread
+     */
+    private void processCurrentTest() {
+        if (mTestIndex < mTests.length) {
+            mTests[mTestIndex].run();
+        } else {
+            // On test completion, hide "next" and "fail" buttons, and show "pass" button
+            // instead.
+            mInstructions.setText(R.string.tests_completed_successfully);
+            mNextButton.setVisibility(View.GONE);
+            findViewById(R.id.pass_button).setVisibility(View.VISIBLE);
+            findViewById(R.id.fail_button).setVisibility(View.GONE);
+        }
+    }
+
     protected abstract class Test {
         private final int mStringId;