#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#include "third_party/blink/renderer/core/layout/layout_shift_tracker.h"
#include "third_party/blink/public/common/input/web_mouse_event.h"
#include "third_party/blink/renderer/core/dom/dom_token_list.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/frame/visual_viewport.h"
#include "third_party/blink/renderer/core/frame/web_local_frame_impl.h"
#include "third_party/blink/renderer/core/html/forms/html_select_element.h"
#include "third_party/blink/renderer/core/performance_entry_names.h"
#include "third_party/blink/renderer/core/svg_names.h"
#include "third_party/blink/renderer/core/testing/core_unit_test_helper.h"
#include "third_party/blink/renderer/core/testing/sim/sim_request.h"
#include "third_party/blink/renderer/core/testing/sim/sim_test.h"
#include "third_party/blink/renderer/core/timing/dom_window_performance.h"
#include "third_party/blink/renderer/core/timing/layout_shift.h"
#include "third_party/blink/renderer/core/timing/window_performance.h"
#include "third_party/blink/renderer/platform/testing/unit_test_helpers.h"
namespace blink {
class LayoutShiftTrackerTest : public RenderingTest { … };
TEST_F(LayoutShiftTrackerTest, IgnoreAfterInput) { … }
TEST_F(LayoutShiftTrackerTest, CompositedShiftBeforeFirstPaint) { … }
TEST_F(LayoutShiftTrackerTest, IgnoreSVG) { … }
TEST_F(LayoutShiftTrackerTest, IgnoreAfterChangeEvent) { … }
class LayoutShiftTrackerSimTest : public SimTest { … };
TEST_F(LayoutShiftTrackerSimTest, SubframeWeighting) { … }
TEST_F(LayoutShiftTrackerSimTest, ViewportSizeChange) { … }
TEST_F(LayoutShiftTrackerSimTest, ZoomLevelChange) { … }
class LayoutShiftTrackerNavigationTest : public LayoutShiftTrackerSimTest { … };
void LayoutShiftTrackerNavigationTest::RunTest(bool is_browser_initiated) { … }
TEST_F(LayoutShiftTrackerNavigationTest,
BrowserInitiatedSameDocumentHistoryNavigation) { … }
TEST_F(LayoutShiftTrackerNavigationTest,
RendererInitiatedSameDocumentHistoryNavigation) { … }
class LayoutShiftTrackerPointerdownTest : public LayoutShiftTrackerSimTest { … };
void LayoutShiftTrackerPointerdownTest::RunTest(
WebInputEvent::Type completion_type,
bool expect_exclusion) { … }
TEST_F(LayoutShiftTrackerPointerdownTest, PointerdownBecomesTap) { … }
TEST_F(LayoutShiftTrackerPointerdownTest, PointerdownCancelled) { … }
TEST_F(LayoutShiftTrackerPointerdownTest, PointerdownBecomesScroll) { … }
TEST_F(LayoutShiftTrackerSimTest, MouseMoveDraggingAction) { … }
TEST_F(LayoutShiftTrackerSimTest, TouchDraggingAction) { … }
TEST_F(LayoutShiftTrackerSimTest, TouchScrollingAction) { … }
TEST_F(LayoutShiftTrackerSimTest, MultiplePointerDownUps) { … }
TEST_F(LayoutShiftTrackerTest, StableCompositingChanges) { … }
TEST_F(LayoutShiftTrackerTest, CompositedOverflowExpansion) { … }
TEST_F(LayoutShiftTrackerTest, ContentVisibilityAutoFirstPaint) { … }
TEST_F(LayoutShiftTrackerTest,
ContentVisibilityAutoOffscreenAfterScrollFirstPaint) { … }
TEST_F(LayoutShiftTrackerTest, ContentVisibilityHiddenFirstPaint) { … }
TEST_F(LayoutShiftTrackerTest, ContentVisibilityAutoResize) { … }
TEST_F(LayoutShiftTrackerTest,
ContentVisibilityAutoOnscreenAndOffscreenAfterScrollFirstPaint) { … }
TEST_F(LayoutShiftTrackerTest, NestedFixedPos) { … }
TEST_F(LayoutShiftTrackerTest, ClipByVisualViewport) { … }
TEST_F(LayoutShiftTrackerTest, ScrollThenCauseScrollAnchoring) { … }
TEST_F(LayoutShiftTrackerTest, NeedsToTrack) { … }
TEST_F(LayoutShiftTrackerTest, AnimatingTransformCreatesLayoutShiftRoot) { … }
}