aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorDavid Stevens <stevensd@google.com>2020-09-15 18:53:39 +0900
committerDavid Stevens <stevensd@google.com>2020-09-16 10:37:53 +0900
commitd81f0fc8d1f6b1f8bb898a9bcd5c1393ec3b67cc (patch)
tree92e2b0b9e4ac6fbfd8e8d76d1ae60ae56df6ce15 /tests
parenta2e18369f193278ef7b731de42318f5b1f4326c9 (diff)
downloadv4l2_codec2-d81f0fc8d1f6b1f8bb898a9bcd5c1393ec3b67cc.tar.gz
c2_e2e_test: decouple activity and test startup
This change adds a boolean extra flag that can be set to make the test wait until it receives a specific intent to start the decode/encode test. The delay can be used to configure the activity's window before the test itself starts. Bug: 166403789 Test: manually verify the new flag works Change-Id: Ibbae112dbb3c977be2ad3bf8507e60eeeb4fb72d
Diffstat (limited to 'tests')
-rw-r--r--tests/c2_e2e_test/src/org/chromium/c2/test/E2eTestActivity.java20
1 files changed, 19 insertions, 1 deletions
diff --git a/tests/c2_e2e_test/src/org/chromium/c2/test/E2eTestActivity.java b/tests/c2_e2e_test/src/org/chromium/c2/test/E2eTestActivity.java
index e423fc2..140ff82 100644
--- a/tests/c2_e2e_test/src/org/chromium/c2/test/E2eTestActivity.java
+++ b/tests/c2_e2e_test/src/org/chromium/c2/test/E2eTestActivity.java
@@ -29,6 +29,8 @@ public class E2eTestActivity extends Activity implements SurfaceHolder.Callback
private SurfaceView mSurfaceView;
private Size mSize;
+ private boolean mSurfaceCreated = false;
+ private boolean mCanStartTest = false;
private Size mExpectedSize;
private CountDownLatch mLatch;
@@ -44,6 +46,8 @@ public class E2eTestActivity extends Activity implements SurfaceHolder.Callback
mSurfaceView = (SurfaceView) findViewById(R.id.surface);
mSurfaceView.getHolder().addCallback(this);
+
+ mCanStartTest = !getIntent().getBooleanExtra("delay-start", false);
}
@Override
@@ -55,6 +59,14 @@ public class E2eTestActivity extends Activity implements SurfaceHolder.Callback
@Override
public void surfaceCreated(SurfaceHolder holder) {
+ mSurfaceCreated = true;
+ maybeStartTest();
+ }
+
+ private void maybeStartTest() {
+ if (!mSurfaceCreated || !mCanStartTest) {
+ return;
+ }
boolean encode = getIntent().getBooleanExtra("do-encode", false);
String[] testArgs =
getIntent().getStringArrayExtra("test-args") != null
@@ -71,7 +83,7 @@ public class E2eTestActivity extends Activity implements SurfaceHolder.Callback
encode,
testArgs,
testArgs.length,
- holder.getSurface(),
+ mSurfaceView.getHolder().getSurface(),
logFile);
Log.i(TAG, "Test returned result code " + res);
@@ -95,6 +107,12 @@ public class E2eTestActivity extends Activity implements SurfaceHolder.Callback
@Override
public void onNewIntent(Intent intent) {
+ if (intent.getAction().equals("org.chromium.c2.test.START_TEST")) {
+ mCanStartTest = true;
+ maybeStartTest();
+ return;
+ }
+
synchronized (this) {
if (mDecoderPtr != 0) {
stopDecoderLoop(mDecoderPtr);