diff options
Diffstat (limited to 'tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionTest.java')
-rw-r--r-- | tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionTest.java | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionTest.java b/tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionTest.java index 6e9e7390c2c1..3f04888da637 100644 --- a/tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionTest.java +++ b/tests/SurfaceComposition/src/android/surfacecomposition/SurfaceCompositionTest.java @@ -15,7 +15,9 @@ */ package android.surfacecomposition; +import android.app.Activity; import android.graphics.PixelFormat; +import android.os.Bundle; import android.surfacecomposition.SurfaceCompositionMeasuringActivity.AllocationScore; import android.surfacecomposition.SurfaceCompositionMeasuringActivity.CompositorScore; import android.test.ActivityInstrumentationTestCase2; @@ -25,6 +27,16 @@ import android.util.Log; public class SurfaceCompositionTest extends ActivityInstrumentationTestCase2<SurfaceCompositionMeasuringActivity> { private final static String TAG = "SurfaceCompositionTest"; + private final static String KEY_SURFACE_COMPOSITION_PERFORMANCE = + "surface-compoistion-peformance-sps"; + private final static String KEY_SURFACE_COMPOSITION_BANDWITH = + "surface-compoistion-bandwidth-gbps"; + private final static String KEY_SURFACE_ALLOCATION_PERFORMANCE_MEDIAN = + "surface-allocation-performance-median-sps"; + private final static String KEY_SURFACE_ALLOCATION_PERFORMANCE_MIN = + "surface-allocation-performance-min-sps"; + private final static String KEY_SURFACE_ALLOCATION_PERFORMANCE_MAX = + "surface-allocation-performance-max-sps"; // Pass threshold for major pixel formats. private final static int[] TEST_PIXEL_FORMATS = new int[] { @@ -53,6 +65,7 @@ public class SurfaceCompositionTest extends @SmallTest public void testSurfaceCompositionPerformance() { + Bundle status = new Bundle(); for (int i = 0; i < TEST_PIXEL_FORMATS.length; ++i) { int pixelFormat = TEST_PIXEL_FORMATS[i]; String formatName = SurfaceCompositionMeasuringActivity.getPixelFormatInfo(pixelFormat); @@ -62,11 +75,20 @@ public class SurfaceCompositionTest extends "performance score. " + score.mSurfaces + " < " + MIN_ACCEPTED_COMPOSITION_SCORE[i] + ".", score.mSurfaces >= MIN_ACCEPTED_COMPOSITION_SCORE[i]); + // Send status only for TRANSLUCENT format. + if (pixelFormat == PixelFormat.TRANSLUCENT) { + status.putDouble(KEY_SURFACE_COMPOSITION_PERFORMANCE, score.mSurfaces); + // Put bandwidth in GBPS. + status.putDouble(KEY_SURFACE_COMPOSITION_BANDWITH, score.mBandwidth / + (1024.0 * 1024.0 * 1024.0)); + } } + getInstrumentation().sendStatus(Activity.RESULT_OK, status); } @SmallTest public void testSurfaceAllocationPerformance() { + Bundle status = new Bundle(); for (int i = 0; i < TEST_PIXEL_FORMATS.length; ++i) { int pixelFormat = TEST_PIXEL_FORMATS[i]; String formatName = SurfaceCompositionMeasuringActivity.getPixelFormatInfo(pixelFormat); @@ -76,6 +98,13 @@ public class SurfaceCompositionTest extends "performance score. " + score.mMedian + " < " + MIN_ACCEPTED_ALLOCATION_SCORE[i] + ".", score.mMedian >= MIN_ACCEPTED_ALLOCATION_SCORE[i]); + // Send status only for TRANSLUCENT format. + if (pixelFormat == PixelFormat.TRANSLUCENT) { + status.putDouble(KEY_SURFACE_ALLOCATION_PERFORMANCE_MEDIAN, score.mMedian); + status.putDouble(KEY_SURFACE_ALLOCATION_PERFORMANCE_MIN, score.mMin); + status.putDouble(KEY_SURFACE_ALLOCATION_PERFORMANCE_MAX, score.mMax); + } } + getInstrumentation().sendStatus(Activity.RESULT_OK, status); } } |