chromium/cc/trees/property_tree_builder_unittest.cc

// Copyright 2011 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "cc/trees/property_tree_builder.h"

#include <memory>
#include <utility>

#include "cc/animation/filter_animation_curve.h"
#include "cc/layers/layer.h"
#include "cc/layers/layer_impl.h"
#include "cc/layers/picture_layer.h"
#include "cc/layers/render_surface_impl.h"
#include "cc/layers/texture_layer.h"
#include "cc/test/animation_test_common.h"
#include "cc/test/fake_content_layer_client.h"
#include "cc/test/layer_tree_impl_test_base.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/gfx/animation/keyframe/keyframed_animation_curve.h"
#include "ui/gfx/geometry/size_conversions.h"
#include "ui/gfx/geometry/test/geometry_util.h"
#include "ui/gfx/geometry/transform.h"
#include "ui/gfx/geometry/vector2d_conversions.h"

namespace cc {
namespace {

class PropertyTreeBuilderTest : public LayerTreeImplTestBase,
                                public testing::Test {};

TEST_F(PropertyTreeBuilderTest, EffectTreeTransformIdTest) {}

TEST_F(PropertyTreeBuilderTest, RenderSurfaceForNonAxisAlignedClipping) {}

TEST_F(PropertyTreeBuilderTest, EffectNodesForNonAxisAlignedClips) {}

TEST_F(PropertyTreeBuilderTest,
       RenderSurfaceListForRenderSurfaceWithClippedLayer) {}

TEST_F(PropertyTreeBuilderTest, RenderSurfaceListForTransparentChild) {}

TEST_F(PropertyTreeBuilderTest,
       RenderSurfaceListForTransparentChildWithBackdropFilter) {}

TEST_F(PropertyTreeBuilderTest, RenderSurfaceListForFilter) {}

TEST_F(PropertyTreeBuilderTest, ForceRenderSurface) {}

TEST_F(PropertyTreeBuilderTest, VisibleRectWithClippingAndFilters) {}

TEST_F(PropertyTreeBuilderTest, VisibleRectWithScalingClippingAndFilters) {}

TEST_F(PropertyTreeBuilderTest, TextureLayerSnapping) {}

// Verify that having animated opacity but current opacity 1 still creates
// a render surface.
TEST_F(PropertyTreeBuilderTest, AnimatedOpacityCreatesRenderSurface) {}

static bool FilterIsAnimating(LayerImpl* layer) {}

// Verify that having an animated filter (but no current filter, as these
// are mutually exclusive) correctly creates a render surface.
TEST_F(PropertyTreeBuilderTest, AnimatedFilterCreatesRenderSurface) {}

bool HasPotentiallyRunningFilterAnimation(const LayerImpl& layer) {}

// Verify that having a filter animation with a delayed start time creates a
// render surface.
TEST_F(PropertyTreeBuilderTest, DelayedFilterAnimationCreatesRenderSurface) {}

TEST_F(PropertyTreeBuilderTest, ChangingAxisAlignmentTriggersRebuild) {}

TEST_F(PropertyTreeBuilderTest, ResetPropertyTreeIndices) {}

TEST_F(PropertyTreeBuilderTest, RenderSurfaceClipsSubtree) {}

TEST_F(PropertyTreeBuilderTest, PropertyTreesRebuildWithOpacityChanges) {}

TEST_F(PropertyTreeBuilderTest, RenderSurfaceListForTrilinearFiltering) {}

TEST_F(PropertyTreeBuilderTest, GradientMask) {}

TEST_F(PropertyTreeBuilderTest, NestedGradientMask) {}

TEST_F(PropertyTreeBuilderTest, RoundedCornerBounds) {}

TEST_F(PropertyTreeBuilderTest, RoundedCornerBoundsInterveningRenderTarget) {}

TEST_F(PropertyTreeBuilderTest, RoundedCornerBoundsSiblingRenderTarget) {}

TEST_F(PropertyTreeBuilderTest, FastRoundedCornerDoesNotTriggerRenderSurface) {}

TEST_F(PropertyTreeBuilderTest,
       NonFittingFastRoundedCornerTriggersRenderSurfaceInAncestor) {}

TEST_F(PropertyTreeBuilderTest,
       NonOverlappingRoundedCornerDoesNotTriggerRenderSurfaceFromSubtree) {}

TEST_F(PropertyTreeBuilderTest, SubtreeSize) {}

}  // namespace
}  // namespace cc