5#include "flutter/testing/testing.h"
17 void Write(
const std::optional<Rect> optional_rect) {}
19 void Write(
const std::shared_ptr<ImageFilter>& image_filter) {}
21 void Write(
size_t size) {}
23 void Write(
const Matrix& matrix) {}
25 void Write(
const Vector3& vec3) {}
27 void Write(
const Vector2& vec2) {}
29 void Write(
const Radians& vec2) {}
31 void Write(
const Path& path) {}
33 void Write(
const std::vector<Point>&
points) {}
37 void Write(
const std::shared_ptr<Image>&
image) {}
39 void Write(
const SamplerDescriptor& sampler) {}
43 void Write(
const Picture& clip_op) {}
45 void Write(
const std::shared_ptr<TextFrame>& text_frame) {}
47 void Write(
const std::shared_ptr<VerticesGeometry>& vertices) {}
49 void Write(
const BlendMode& blend_mode) {}
51 void Write(
const std::vector<Matrix>& matrices) {}
53 void Write(
const std::vector<Rect>& matrices) {}
55 void Write(
const std::vector<Color>& matrices) {}
66TEST(CanvasRecorder, Save) {
67 CanvasRecorder<Serializer> recorder;
72TEST(CanvasRecorder, SaveLayer) {
73 CanvasRecorder<Serializer> recorder;
75 recorder.SaveLayer(
paint);
79TEST(CanvasRecorder, Restore) {
80 CanvasRecorder<Serializer> recorder;
85TEST(CanvasRecorder, RestoreToCount) {
86 CanvasRecorder<Serializer> recorder;
88 recorder.RestoreToCount(0);
89 ASSERT_EQ(recorder.GetSerializer().last_op_,
93TEST(CanvasRecorder, ResetTransform) {
94 CanvasRecorder<Serializer> recorder;
95 recorder.ResetTransform();
96 ASSERT_EQ(recorder.GetSerializer().last_op_,
100TEST(CanvasRecorder, Transform) {
101 CanvasRecorder<Serializer> recorder;
102 recorder.Transform(
Matrix());
107 CanvasRecorder<Serializer> recorder;
108 recorder.Concat(
Matrix());
112TEST(CanvasRecorder, PreConcat) {
113 CanvasRecorder<Serializer> recorder;
114 recorder.PreConcat(
Matrix());
118TEST(CanvasRecorder, Translate) {
119 CanvasRecorder<Serializer> recorder;
125 CanvasRecorder<Serializer> recorder;
131 CanvasRecorder<Serializer> recorder;
137 CanvasRecorder<Serializer> recorder;
143 CanvasRecorder<Serializer> recorder;
148TEST(CanvasRecorder, DrawPath) {
149 CanvasRecorder<Serializer> recorder;
154TEST(CanvasRecorder, DrawPaint) {
155 CanvasRecorder<Serializer> recorder;
158 recorder.DrawPaint(
paint);
160 ASSERT_EQ(recorder.GetSerializer().last_paint_.color,
paint.color);
163TEST(CanvasRecorder, DrawLine) {
164 CanvasRecorder<Serializer> recorder;
169TEST(CanvasRecorder, DrawRect) {
170 CanvasRecorder<Serializer> recorder;
175 ASSERT_EQ(recorder.GetSerializer().last_paint_.color,
paint.color);
178TEST(CanvasRecorder, DrawOval) {
179 CanvasRecorder<Serializer> recorder;
184TEST(CanvasRecorder, DrawRRect) {
185 CanvasRecorder<Serializer> recorder;
190TEST(CanvasRecorder, DrawCircle) {
191 CanvasRecorder<Serializer> recorder;
196TEST(CanvasRecorder, DrawPoints) {
197 CanvasRecorder<Serializer> recorder;
202TEST(CanvasRecorder, DrawImage) {
203 CanvasRecorder<Serializer> recorder;
204 recorder.DrawImage({}, {}, {}, {});
208TEST(CanvasRecorder, DrawImageRect) {
209 CanvasRecorder<Serializer> recorder;
211 ASSERT_EQ(recorder.GetSerializer().last_op_,
215TEST(CanvasRecorder, ClipPath) {
216 CanvasRecorder<Serializer> recorder;
217 recorder.ClipPath({});
222 CanvasRecorder<Serializer> recorder;
223 recorder.ClipRect({});
227TEST(CanvasRecorder, ClipOval) {
228 CanvasRecorder<Serializer> recorder;
229 recorder.ClipOval({});
233TEST(CanvasRecorder, ClipRRect) {
234 CanvasRecorder<Serializer> recorder;
235 recorder.ClipRRect({}, {});
239TEST(CanvasRecorder, DrawTextFrame) {
240 CanvasRecorder<Serializer> recorder;
241 recorder.DrawTextFrame({}, {}, {});
242 ASSERT_EQ(recorder.GetSerializer().last_op_,
246TEST(CanvasRecorder, DrawVertices) {
247 CanvasRecorder<Serializer> recorder;
248 auto geometry = std::shared_ptr<VerticesGeometry>(
250 recorder.DrawVertices(geometry, {}, {});
254TEST(CanvasRecorder, DrawAtlas) {
255 CanvasRecorder<Serializer> recorder;
256 recorder.DrawAtlas({}, {}, {}, {}, {}, {}, {}, {});
#define TEST(S, s, D, expected)
static const int points[]
CanvasRecorderOp last_op_
Paths are lightweight objects that describe a collection of linear, quadratic, or cubic segments....
A geometry that is created from a vertices object.
SourceRectConstraint
Controls the behavior of the source rectangle given to DrawImageRect.
@ kFast
Faster, but may sample outside the bounds of the source rectangle.
@ kRound
Points are drawn as squares.
static constexpr Color Red()
static constexpr Color Blue()
A 4x4 matrix using column-major storage.