Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1a417af2 authored by Yichi Chen's avatar Yichi Chen
Browse files

sf: change the mock method for callback APIs

Following the change in callback function, the patch changes the mock
methods in unit tests and also removes the requirement of calling
isSupported function since it is not necessary in all implementations.

Bug: 194068871
Test: atest libsurfaceflinger_unittest
Change-Id: I22dc25b4118878623871b4547c83f4ab51923985
parent 3401b569
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -39,7 +39,7 @@ public:
    HWComposer();
    ~HWComposer() override;

    MOCK_METHOD1(setCallback, void(HWC2::ComposerCallback*));
    MOCK_METHOD1(setCallback, void(HWC2::ComposerCallback&));
    MOCK_CONST_METHOD3(getDisplayIdentificationData,
                       bool(hal::HWDisplayId, uint8_t*, DisplayIdentificationData*));
    MOCK_CONST_METHOD1(hasCapability, bool(hal::Capability));
+3 −6
Original line number Diff line number Diff line
@@ -89,6 +89,7 @@ struct MockHWC2ComposerCallback final : StrictMock<HWC2::ComposerCallback> {
    MOCK_METHOD2(onComposerHalVsyncPeriodTimingChanged,
                 void(hal::HWDisplayId, const hal::VsyncPeriodChangeTimeline&));
    MOCK_METHOD1(onComposerHalSeamlessPossible, void(hal::HWDisplayId));
    MOCK_METHOD1(onComposerHalVsyncIdle, void(hal::HWDisplayId));
};

struct HWComposerSetCallbackTest : testing::Test {
@@ -110,11 +111,9 @@ TEST_F(HWComposerSetCallbackTest, loadsLayerMetadataSupport) {
                            }),
                            Return(hardware::graphics::composer::V2_4::Error::NONE)));
    EXPECT_CALL(*mHal, registerCallback(_));
    EXPECT_CALL(*mHal, isSupported(Hwc2::Composer::OptionalFeature::RefreshRateSwitching))
            .WillOnce(Return(false));

    impl::HWComposer hwc{std::unique_ptr<Hwc2::Composer>(mHal)};
    hwc.setCallback(&mCallback);
    hwc.setCallback(mCallback);

    const auto& supported = hwc.getSupportedLayerGenericMetadata();
    EXPECT_EQ(2u, supported.size());
@@ -129,11 +128,9 @@ TEST_F(HWComposerSetCallbackTest, handlesUnsupportedCallToGetLayerGenericMetadat
    EXPECT_CALL(*mHal, getLayerGenericMetadataKeys(_))
            .WillOnce(Return(hardware::graphics::composer::V2_4::Error::UNSUPPORTED));
    EXPECT_CALL(*mHal, registerCallback(_));
    EXPECT_CALL(*mHal, isSupported(Hwc2::Composer::OptionalFeature::RefreshRateSwitching))
            .WillOnce(Return(false));

    impl::HWComposer hwc{std::unique_ptr<Hwc2::Composer>(mHal)};
    hwc.setCallback(&mCallback);
    hwc.setCallback(mCallback);

    const auto& supported = hwc.getSupportedLayerGenericMetadata();
    EXPECT_EQ(0u, supported.size());
+2 −1
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@
#include <gmock/gmock.h>

#include "DisplayHardware/ComposerHal.h"
#include "DisplayHardware/HWC2.h"

namespace android {

@@ -51,7 +52,7 @@ public:
    MOCK_METHOD(bool, isSupported, (OptionalFeature), (const, override));
    MOCK_METHOD0(getCapabilities, std::vector<IComposer::Capability>());
    MOCK_METHOD0(dumpDebugInfo, std::string());
    MOCK_METHOD1(registerCallback, void(const sp<IComposerCallback>&));
    MOCK_METHOD1(registerCallback, void(HWC2::ComposerCallback&));
    MOCK_METHOD0(resetCommands, void());
    MOCK_METHOD0(executeCommands, Error());
    MOCK_METHOD0(getMaxVirtualDisplayCount, uint32_t());