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

Commit c9e6003e authored by Lloyd Pique's avatar Lloyd Pique
Browse files

CE: Unit test coverage for Output::setReleasedLayers()

Bug: 144114487
Test: atest libcompositionengine_test
Change-Id: Ia901294252bf7893ded56144d2e2f5f4e7c935c9
parent 99bd5ce9
Loading
Loading
Loading
Loading
+25 −0
Original line number Diff line number Diff line
@@ -482,6 +482,31 @@ TEST_F(OutputTest, getOutputLayerForLayerWorks) {
    EXPECT_EQ(nullptr, mOutput->getOutputLayerForLayer(&layer));
}

/*
 * Output::setReleasedLayers()
 */

using OutputSetReleasedLayersTest = OutputTest;

TEST_F(OutputSetReleasedLayersTest, setReleasedLayersTakesGivenLayers) {
    sp<StrictMock<mock::LayerFE>> layer1FE{new StrictMock<mock::LayerFE>()};
    sp<StrictMock<mock::LayerFE>> layer2FE{new StrictMock<mock::LayerFE>()};
    sp<StrictMock<mock::LayerFE>> layer3FE{new StrictMock<mock::LayerFE>()};

    Output::ReleasedLayers layers;
    layers.push_back(layer1FE);
    layers.push_back(layer2FE);
    layers.push_back(layer3FE);

    mOutput->setReleasedLayers(std::move(layers));

    const auto& setLayers = mOutput->getReleasedLayersForTest();
    ASSERT_EQ(3u, setLayers.size());
    ASSERT_EQ(layer1FE.get(), setLayers[0].promote().get());
    ASSERT_EQ(layer2FE.get(), setLayers[1].promote().get());
    ASSERT_EQ(layer3FE.get(), setLayers[2].promote().get());
}

/*
 * Output::updateAndWriteCompositionState()
 */