diff options
Diffstat (limited to 'services/surfaceflinger/tests/LayerTypeTransaction_test.cpp')
-rw-r--r-- | services/surfaceflinger/tests/LayerTypeTransaction_test.cpp | 45 |
1 files changed, 20 insertions, 25 deletions
diff --git a/services/surfaceflinger/tests/LayerTypeTransaction_test.cpp b/services/surfaceflinger/tests/LayerTypeTransaction_test.cpp index 34c918261a..84780ba73b 100644 --- a/services/surfaceflinger/tests/LayerTypeTransaction_test.cpp +++ b/services/surfaceflinger/tests/LayerTypeTransaction_test.cpp @@ -19,7 +19,6 @@ #pragma clang diagnostic ignored "-Wconversion" #include <gui/BufferItemConsumer.h> -#include <private/android_filesystem_config.h> #include "TransactionTestHarnesses.h" namespace android { @@ -44,7 +43,7 @@ TEST_P(LayerTypeTransactionTest, SetRelativeZNegative) { sp<SurfaceControl> parent = LayerTransactionTest::createLayer("Parent", 0 /* buffer width */, 0 /* buffer height */, ISurfaceComposerClient::eFXSurfaceContainer); - Transaction().setCrop(parent, Rect(0, 0, mDisplayWidth, mDisplayHeight)).apply(); + Transaction().setCrop_legacy(parent, Rect(0, 0, mDisplayWidth, mDisplayHeight)).apply(); sp<SurfaceControl> layerR; sp<SurfaceControl> layerG; sp<SurfaceControl> layerB; @@ -55,17 +54,15 @@ TEST_P(LayerTypeTransactionTest, SetRelativeZNegative) { ASSERT_NO_FATAL_FAILURE(layerB = createLayer("test B", 32, 32)); ASSERT_NO_FATAL_FAILURE(fillLayerColor(layerB, Color::BLUE, 32, 32)); - Transaction().reparent(layerB, parent).apply(); + Transaction().reparent(layerB, parent->getHandle()).apply(); // layerR = mLayerZBase, layerG = layerR - 1, layerB = -2 - Transaction().setRelativeLayer(layerG, layerR, -1).setLayer(layerB, -2).apply(); + Transaction().setRelativeLayer(layerG, layerR->getHandle(), -1).setLayer(layerB, -2).apply(); std::unique_ptr<ScreenCapture> screenshot; // only layerB is in this range - LayerCaptureArgs captureArgs; - captureArgs.layerHandle = parent->getHandle(); - captureArgs.sourceCrop = {0, 0, 32, 32}; - ScreenCapture::captureLayers(&screenshot, captureArgs); + sp<IBinder> parentHandle = parent->getHandle(); + ScreenCapture::captureLayers(&screenshot, parentHandle, Rect(0, 0, 32, 32)); screenshot->expectColor(Rect(0, 0, 32, 32), Color::BLUE); } @@ -85,11 +82,14 @@ TEST_P(LayerTypeTransactionTest, SetLayerAndRelative) { .setColor(parent, half3{0.0f, 0.0f, 0.0f}) .show(childLayer) .show(parent) - .setCrop(parent, Rect(0, 0, mDisplayWidth, mDisplayHeight)) - .setCrop(childLayer, Rect(0, 0, 20, 30)) + .setCrop_legacy(parent, Rect(0, 0, mDisplayWidth, mDisplayHeight)) + .setCrop_legacy(childLayer, Rect(0, 0, 20, 30)) .apply(); - Transaction().setRelativeLayer(childLayer, parent, -1).setLayer(childLayer, 1).apply(); + Transaction() + .setRelativeLayer(childLayer, parent->getHandle(), -1) + .setLayer(childLayer, 1) + .apply(); { SCOPED_TRACE("setLayer above"); @@ -99,7 +99,10 @@ TEST_P(LayerTypeTransactionTest, SetLayerAndRelative) { screenshot->expectColor(Rect(0, 0, 20, 30), Color::RED); } - Transaction().setLayer(childLayer, 1).setRelativeLayer(childLayer, parent, -1).apply(); + Transaction() + .setLayer(childLayer, 1) + .setRelativeLayer(childLayer, parent->getHandle(), -1) + .apply(); { SCOPED_TRACE("setRelative below"); @@ -136,7 +139,7 @@ TEST_P(LayerTypeTransactionTest, HideRelativeParentHidesLayer) { .setLayer(relativeParent, mLayerZBase) .apply(); - Transaction().setRelativeLayer(childLayer, relativeParent, 1).apply(); + Transaction().setRelativeLayer(childLayer, relativeParent->getHandle(), 1).apply(); { SCOPED_TRACE("setLayer above"); @@ -162,25 +165,17 @@ TEST_P(LayerTypeTransactionTest, SetFlagsSecure) { ASSERT_NO_FATAL_FAILURE(layer = createLayer("test", 32, 32)); ASSERT_NO_FATAL_FAILURE(fillLayerColor(layer, Color::RED, 32, 32)); + sp<ISurfaceComposer> composer = ComposerService::getComposerService(); sp<GraphicBuffer> outBuffer; Transaction() .setFlags(layer, layer_state_t::eLayerSecure, layer_state_t::eLayerSecure) .apply(true); - - DisplayCaptureArgs args; - args.displayToken = mDisplay; - - ScreenCaptureResults captureResults; - { - // Ensure the UID is not root because root has all permissions - UIDFaker f(AID_APP_START); - ASSERT_EQ(PERMISSION_DENIED, ScreenCapture::captureDisplay(args, captureResults)); - } + ASSERT_EQ(PERMISSION_DENIED, + composer->captureScreen(mDisplay, &outBuffer, Rect(), 0, 0, false)); Transaction().setFlags(layer, 0, layer_state_t::eLayerSecure).apply(true); - ASSERT_EQ(NO_ERROR, ScreenCapture::captureDisplay(args, captureResults)); + ASSERT_EQ(NO_ERROR, composer->captureScreen(mDisplay, &outBuffer, Rect(), 0, 0, false)); } - TEST_P(LayerTypeTransactionTest, RefreshRateIsInitialized) { sp<SurfaceControl> layer; ASSERT_NO_FATAL_FAILURE(layer = createLayer("test", 32, 32)); |