#include "third_party/blink/renderer/platform/graphics/canvas_resource_dispatcher.h"
#include <memory>
#include "components/viz/common/quads/texture_draw_quad.h"
#include "mojo/public/cpp/bindings/receiver.h"
#include "services/viz/public/mojom/hit_test/hit_test_region_list.mojom-blink.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/blink/public/mojom/frame_sinks/embedded_frame_sink.mojom-blink.h"
#include "third_party/blink/public/platform/scheduler/test/renderer_scheduler_test_support.h"
#include "third_party/blink/renderer/platform/graphics/canvas_resource.h"
#include "third_party/blink/renderer/platform/graphics/canvas_resource_provider.h"
#include "third_party/blink/renderer/platform/graphics/test/mock_compositor_frame_sink.h"
#include "third_party/blink/renderer/platform/graphics/test/mock_embedded_frame_sink_provider.h"
#include "third_party/blink/renderer/platform/graphics/test/test_webgraphics_shared_image_interface_provider.h"
#include "third_party/blink/renderer/platform/testing/task_environment.h"
#include "third_party/blink/renderer/platform/testing/testing_platform_support.h"
#include "third_party/blink/renderer/platform/wtf/functional.h"
#include "third_party/skia/include/core/SkSurface.h"
#include "ui/gfx/mojom/presentation_feedback.mojom-blink.h"
_;
Mock;
ValuesIn;
namespace blink {
namespace {
constexpr uint32_t kClientId = …;
constexpr uint32_t kSinkId = …;
constexpr size_t kWidth = …;
constexpr size_t kHeight = …;
struct TestParams { … };
viz::ResourceId NextId(viz::ResourceId id) { … }
class MockCanvasResourceDispatcher : public CanvasResourceDispatcher { … };
}
class CanvasResourceDispatcherTest
: public testing::Test,
public ::testing::WithParamInterface<TestParams> { … };
TEST_F(CanvasResourceDispatcherTest, PlaceholderRunsNormally) { … }
TEST_F(CanvasResourceDispatcherTest, PlaceholderBeingBlocked) { … }
TEST_P(CanvasResourceDispatcherTest, DispatchFrame) { … }
const TestParams kTestCases[] = …;
INSTANTIATE_TEST_SUITE_P(…);
}