mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
[Impeller] migrated more golden images (flutter/engine#40835)
issue: https://github.com/flutter/flutter/issues/123790 ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [x] I read and followed the [Flutter Style Guide] and the [C++, Objective-C, Java style guides]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I added new tests to check the change I am making or feature I am adding, or Hixie said the PR is test-exempt. See [testing the engine] for instructions on writing and running engine tests. - [x] I updated/added relevant documentation (doc comments with `///`). - [x] I signed the [CLA]. - [x] All existing and new tests are passing. If you need help, consider asking for advice on the #hackers-new channel on [Discord]. <!-- Links --> [Contributor Guide]: https://github.com/flutter/flutter/wiki/Tree-hygiene#overview [Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene [Flutter Style Guide]: https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style [testing the engine]: https://github.com/flutter/flutter/wiki/Testing-the-engine [CLA]: https://cla.developers.google.com/ [flutter/tests]: https://github.com/flutter/tests [breaking change policy]: https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes [Discord]: https://github.com/flutter/flutter/wiki/Chat
This commit is contained in:
parent
45e3c0920f
commit
8f385d6532
@ -102,6 +102,7 @@ TEST_P(AiksTest, CanRenderInvertedImage) {
|
||||
ASSERT_TRUE(OpenPlaygroundHere(canvas.EndRecordingAsPicture()));
|
||||
}
|
||||
|
||||
namespace {
|
||||
bool GenerateMipmap(const std::shared_ptr<Context>& context,
|
||||
std::shared_ptr<Texture> texture,
|
||||
std::string label) {
|
||||
@ -118,79 +119,42 @@ bool GenerateMipmap(const std::shared_ptr<Context>& context,
|
||||
return buffer->SubmitCommands();
|
||||
}
|
||||
|
||||
TEST_P(AiksTest, CanRenderTiledTexture) {
|
||||
auto context = GetContext();
|
||||
void CanRenderTiledTexture(AiksTest* aiks_test, Entity::TileMode tile_mode) {
|
||||
auto context = aiks_test->GetContext();
|
||||
ASSERT_TRUE(context);
|
||||
bool first_frame = true;
|
||||
auto texture = CreateTextureForFixture("table_mountain_nx.png",
|
||||
/*enable_mipmapping=*/true);
|
||||
auto callback = [&](AiksContext& renderer, RenderTarget& render_target) {
|
||||
if (first_frame) {
|
||||
first_frame = false;
|
||||
GenerateMipmap(context, texture, "table_mountain_nx");
|
||||
}
|
||||
|
||||
const char* tile_mode_names[] = {"Clamp", "Repeat", "Mirror", "Decal"};
|
||||
const Entity::TileMode tile_modes[] = {
|
||||
Entity::TileMode::kClamp, Entity::TileMode::kRepeat,
|
||||
Entity::TileMode::kMirror, Entity::TileMode::kDecal};
|
||||
const char* mip_filter_names[] = {"None", "Nearest", "Linear"};
|
||||
const MipFilter mip_filters[] = {MipFilter::kNearest, MipFilter::kLinear};
|
||||
const char* min_mag_filter_names[] = {"Nearest", "Linear"};
|
||||
const MinMagFilter min_mag_filters[] = {MinMagFilter::kNearest,
|
||||
MinMagFilter::kLinear};
|
||||
static int selected_x_tile_mode = 0;
|
||||
static int selected_y_tile_mode = 0;
|
||||
static int selected_mip_filter = 0;
|
||||
static int selected_min_mag_filter = 0;
|
||||
static float alpha = 1.0;
|
||||
ImGui::Begin("Controls", nullptr, ImGuiWindowFlags_AlwaysAutoResize);
|
||||
ImGui::SliderFloat("Alpha", &alpha, 0.0, 1.0);
|
||||
ImGui::Combo("X tile mode", &selected_x_tile_mode, tile_mode_names,
|
||||
sizeof(tile_mode_names) / sizeof(char*));
|
||||
ImGui::Combo("Y tile mode", &selected_y_tile_mode, tile_mode_names,
|
||||
sizeof(tile_mode_names) / sizeof(char*));
|
||||
ImGui::Combo("Mip filter", &selected_mip_filter, mip_filter_names,
|
||||
sizeof(mip_filter_names) / sizeof(char*));
|
||||
ImGui::Combo("Min Mag filter", &selected_min_mag_filter,
|
||||
min_mag_filter_names,
|
||||
sizeof(min_mag_filter_names) / sizeof(char*));
|
||||
static Matrix matrix = {
|
||||
1, 0, 0, 0, //
|
||||
0, 1, 0, 0, //
|
||||
0, 0, 1, 0, //
|
||||
0, 0, 0, 1 //
|
||||
};
|
||||
std::string label = "##1";
|
||||
for (int i = 0; i < 4; i++) {
|
||||
ImGui::InputScalarN(label.c_str(), ImGuiDataType_Float, &(matrix.vec[i]),
|
||||
4, NULL, NULL, "%.2f", 0);
|
||||
label[2]++;
|
||||
}
|
||||
ImGui::End();
|
||||
|
||||
Canvas canvas;
|
||||
Paint paint;
|
||||
canvas.Translate({100.0, 100.0, 0});
|
||||
auto x_tile_mode = tile_modes[selected_x_tile_mode];
|
||||
auto y_tile_mode = tile_modes[selected_y_tile_mode];
|
||||
SamplerDescriptor descriptor;
|
||||
descriptor.mip_filter = mip_filters[selected_mip_filter];
|
||||
descriptor.min_filter = min_mag_filters[selected_min_mag_filter];
|
||||
descriptor.mag_filter = min_mag_filters[selected_min_mag_filter];
|
||||
paint.color_source = [texture, x_tile_mode, y_tile_mode, descriptor]() {
|
||||
auto contents = std::make_shared<TiledTextureContents>();
|
||||
contents->SetTexture(texture);
|
||||
contents->SetTileModes(x_tile_mode, y_tile_mode);
|
||||
contents->SetSamplerDescriptor(descriptor);
|
||||
contents->SetEffectTransform(matrix);
|
||||
return contents;
|
||||
};
|
||||
paint.color = Color(1, 1, 1, alpha);
|
||||
canvas.DrawRect({0, 0, 600, 600}, paint);
|
||||
return renderer.Render(canvas.EndRecordingAsPicture(), render_target);
|
||||
auto texture = aiks_test->CreateTextureForFixture("table_mountain_nx.png",
|
||||
/*enable_mipmapping=*/true);
|
||||
GenerateMipmap(context, texture, "table_mountain_nx");
|
||||
Canvas canvas;
|
||||
canvas.Scale(aiks_test->GetContentScale());
|
||||
canvas.Translate({100.0f, 100.0f, 0});
|
||||
Paint paint;
|
||||
paint.color_source = [texture, tile_mode]() {
|
||||
auto contents = std::make_shared<TiledTextureContents>();
|
||||
contents->SetTexture(texture);
|
||||
contents->SetTileModes(tile_mode, tile_mode);
|
||||
return contents;
|
||||
};
|
||||
ASSERT_TRUE(OpenPlaygroundHere(callback));
|
||||
paint.color = Color(1, 1, 1, 1);
|
||||
canvas.DrawRect({0, 0, 600, 600}, paint);
|
||||
ASSERT_TRUE(aiks_test->OpenPlaygroundHere(canvas.EndRecordingAsPicture()));
|
||||
}
|
||||
} // namespace
|
||||
|
||||
TEST_P(AiksTest, CanRenderTiledTextureClamp) {
|
||||
CanRenderTiledTexture(this, Entity::TileMode::kClamp);
|
||||
}
|
||||
|
||||
TEST_P(AiksTest, CanRenderTiledTextureRepeat) {
|
||||
CanRenderTiledTexture(this, Entity::TileMode::kRepeat);
|
||||
}
|
||||
|
||||
TEST_P(AiksTest, CanRenderTiledTextureMirror) {
|
||||
CanRenderTiledTexture(this, Entity::TileMode::kMirror);
|
||||
}
|
||||
|
||||
TEST_P(AiksTest, CanRenderTiledTextureDecal) {
|
||||
CanRenderTiledTexture(this, Entity::TileMode::kDecal);
|
||||
}
|
||||
|
||||
TEST_P(AiksTest, CanRenderImageRect) {
|
||||
@ -349,55 +313,41 @@ TEST_P(AiksTest, CanSaveLayerStandalone) {
|
||||
ASSERT_TRUE(OpenPlaygroundHere(canvas.EndRecordingAsPicture()));
|
||||
}
|
||||
|
||||
TEST_P(AiksTest, CanRenderLinearGradient) {
|
||||
auto callback = [&](AiksContext& renderer, RenderTarget& render_target) {
|
||||
const char* tile_mode_names[] = {"Clamp", "Repeat", "Mirror", "Decal"};
|
||||
const Entity::TileMode tile_modes[] = {
|
||||
Entity::TileMode::kClamp, Entity::TileMode::kRepeat,
|
||||
Entity::TileMode::kMirror, Entity::TileMode::kDecal};
|
||||
namespace {
|
||||
void CanRenderLinearGradient(AiksTest* aiks_test, Entity::TileMode tile_mode) {
|
||||
Canvas canvas;
|
||||
canvas.Scale(aiks_test->GetContentScale());
|
||||
Paint paint;
|
||||
canvas.Translate({100.0f, 0, 0});
|
||||
paint.color_source = [tile_mode]() {
|
||||
std::vector<Color> colors = {Color{0.9568, 0.2627, 0.2118, 1.0},
|
||||
Color{0.1294, 0.5882, 0.9529, 0.0}};
|
||||
std::vector<Scalar> stops = {0.0, 1.0};
|
||||
|
||||
static int selected_tile_mode = 0;
|
||||
static float alpha = 1;
|
||||
ImGui::Begin("Controls", nullptr, ImGuiWindowFlags_AlwaysAutoResize);
|
||||
ImGui::SliderFloat("Alpha", &alpha, 0, 1);
|
||||
ImGui::Combo("Tile mode", &selected_tile_mode, tile_mode_names,
|
||||
sizeof(tile_mode_names) / sizeof(char*));
|
||||
static Matrix matrix = {
|
||||
1, 0, 0, 0, //
|
||||
0, 1, 0, 0, //
|
||||
0, 0, 1, 0, //
|
||||
0, 0, 0, 1 //
|
||||
};
|
||||
std::string label = "##1";
|
||||
for (int i = 0; i < 4; i++) {
|
||||
ImGui::InputScalarN(label.c_str(), ImGuiDataType_Float, &(matrix.vec[i]),
|
||||
4, NULL, NULL, "%.2f", 0);
|
||||
label[2]++;
|
||||
}
|
||||
ImGui::End();
|
||||
|
||||
Canvas canvas;
|
||||
Paint paint;
|
||||
canvas.Translate({100.0, 100.0, 0});
|
||||
auto tile_mode = tile_modes[selected_tile_mode];
|
||||
paint.color_source = [tile_mode]() {
|
||||
std::vector<Color> colors = {Color{0.9568, 0.2627, 0.2118, 1.0},
|
||||
Color{0.1294, 0.5882, 0.9529, 0.0}};
|
||||
std::vector<Scalar> stops = {0.0, 1.0};
|
||||
|
||||
auto contents = std::make_shared<LinearGradientContents>();
|
||||
contents->SetEndPoints({0, 0}, {200, 200});
|
||||
contents->SetColors(std::move(colors));
|
||||
contents->SetStops(std::move(stops));
|
||||
contents->SetTileMode(tile_mode);
|
||||
contents->SetEffectTransform(matrix);
|
||||
return contents;
|
||||
};
|
||||
paint.color = Color(1.0, 1.0, 1.0, alpha);
|
||||
canvas.DrawRect({0, 0, 600, 600}, paint);
|
||||
return renderer.Render(canvas.EndRecordingAsPicture(), render_target);
|
||||
auto contents = std::make_shared<LinearGradientContents>();
|
||||
contents->SetEndPoints({0, 0}, {200, 200});
|
||||
contents->SetColors(std::move(colors));
|
||||
contents->SetStops(std::move(stops));
|
||||
contents->SetTileMode(tile_mode);
|
||||
return contents;
|
||||
};
|
||||
ASSERT_TRUE(OpenPlaygroundHere(callback));
|
||||
paint.color = Color(1.0, 1.0, 1.0, 1.0);
|
||||
canvas.DrawRect({0, 0, 600, 600}, paint);
|
||||
ASSERT_TRUE(aiks_test->OpenPlaygroundHere(canvas.EndRecordingAsPicture()));
|
||||
}
|
||||
} // namespace
|
||||
|
||||
TEST_P(AiksTest, CanRenderLinearGradientClamp) {
|
||||
CanRenderLinearGradient(this, Entity::TileMode::kClamp);
|
||||
}
|
||||
TEST_P(AiksTest, CanRenderLinearGradientRepeat) {
|
||||
CanRenderLinearGradient(this, Entity::TileMode::kRepeat);
|
||||
}
|
||||
TEST_P(AiksTest, CanRenderLinearGradientMirror) {
|
||||
CanRenderLinearGradient(this, Entity::TileMode::kMirror);
|
||||
}
|
||||
TEST_P(AiksTest, CanRenderLinearGradientDecal) {
|
||||
CanRenderLinearGradient(this, Entity::TileMode::kDecal);
|
||||
}
|
||||
|
||||
TEST_P(AiksTest, CanRenderLinearGradientWithOverlappingStops) {
|
||||
@ -453,69 +403,57 @@ TEST_P(AiksTest, CanRenderLinearGradientWithOverlappingStops) {
|
||||
ASSERT_TRUE(OpenPlaygroundHere(callback));
|
||||
}
|
||||
|
||||
TEST_P(AiksTest, CanRenderLinearGradientManyColors) {
|
||||
auto callback = [&](AiksContext& renderer, RenderTarget& render_target) {
|
||||
const char* tile_mode_names[] = {"Clamp", "Repeat", "Mirror", "Decal"};
|
||||
const Entity::TileMode tile_modes[] = {
|
||||
Entity::TileMode::kClamp, Entity::TileMode::kRepeat,
|
||||
Entity::TileMode::kMirror, Entity::TileMode::kDecal};
|
||||
|
||||
static int selected_tile_mode = 0;
|
||||
static float alpha = 1;
|
||||
ImGui::Begin("Controls", nullptr, ImGuiWindowFlags_AlwaysAutoResize);
|
||||
ImGui::SliderFloat("Alpha", &alpha, 0, 1);
|
||||
ImGui::Combo("Tile mode", &selected_tile_mode, tile_mode_names,
|
||||
sizeof(tile_mode_names) / sizeof(char*));
|
||||
static Matrix matrix = {
|
||||
1, 0, 0, 0, //
|
||||
0, 1, 0, 0, //
|
||||
0, 0, 1, 0, //
|
||||
0, 0, 0, 1 //
|
||||
namespace {
|
||||
void CanRenderLinearGradientManyColors(AiksTest* aiks_test,
|
||||
Entity::TileMode tile_mode) {
|
||||
Canvas canvas;
|
||||
canvas.Scale(aiks_test->GetContentScale());
|
||||
Paint paint;
|
||||
canvas.Translate({100, 100, 0});
|
||||
paint.color_source = [tile_mode]() {
|
||||
std::vector<Color> colors = {
|
||||
Color{0x1f / 255.0, 0.0, 0x5c / 255.0, 1.0},
|
||||
Color{0x5b / 255.0, 0.0, 0x60 / 255.0, 1.0},
|
||||
Color{0x87 / 255.0, 0x01 / 255.0, 0x60 / 255.0, 1.0},
|
||||
Color{0xac / 255.0, 0x25 / 255.0, 0x53 / 255.0, 1.0},
|
||||
Color{0xe1 / 255.0, 0x6b / 255.0, 0x5c / 255.0, 1.0},
|
||||
Color{0xf3 / 255.0, 0x90 / 255.0, 0x60 / 255.0, 1.0},
|
||||
Color{0xff / 255.0, 0xb5 / 255.0, 0x6b / 250.0, 1.0}};
|
||||
std::vector<Scalar> stops = {
|
||||
0.0,
|
||||
(1.0 / 6.0) * 1,
|
||||
(1.0 / 6.0) * 2,
|
||||
(1.0 / 6.0) * 3,
|
||||
(1.0 / 6.0) * 4,
|
||||
(1.0 / 6.0) * 5,
|
||||
1.0,
|
||||
};
|
||||
std::string label = "##1";
|
||||
for (int i = 0; i < 4; i++) {
|
||||
ImGui::InputScalarN(label.c_str(), ImGuiDataType_Float, &(matrix.vec[i]),
|
||||
4, NULL, NULL, "%.2f", 0);
|
||||
label[2]++;
|
||||
}
|
||||
ImGui::End();
|
||||
|
||||
Canvas canvas;
|
||||
Paint paint;
|
||||
canvas.Translate({100.0, 100.0, 0});
|
||||
auto tile_mode = tile_modes[selected_tile_mode];
|
||||
paint.color_source = [tile_mode]() {
|
||||
std::vector<Color> colors = {
|
||||
Color{0x1f / 255.0, 0.0, 0x5c / 255.0, 1.0},
|
||||
Color{0x5b / 255.0, 0.0, 0x60 / 255.0, 1.0},
|
||||
Color{0x87 / 255.0, 0x01 / 255.0, 0x60 / 255.0, 1.0},
|
||||
Color{0xac / 255.0, 0x25 / 255.0, 0x53 / 255.0, 1.0},
|
||||
Color{0xe1 / 255.0, 0x6b / 255.0, 0x5c / 255.0, 1.0},
|
||||
Color{0xf3 / 255.0, 0x90 / 255.0, 0x60 / 255.0, 1.0},
|
||||
Color{0xff / 255.0, 0xb5 / 255.0, 0x6b / 250.0, 1.0}};
|
||||
std::vector<Scalar> stops = {
|
||||
0.0,
|
||||
(1.0 / 6.0) * 1,
|
||||
(1.0 / 6.0) * 2,
|
||||
(1.0 / 6.0) * 3,
|
||||
(1.0 / 6.0) * 4,
|
||||
(1.0 / 6.0) * 5,
|
||||
1.0,
|
||||
};
|
||||
|
||||
auto contents = std::make_shared<LinearGradientContents>();
|
||||
contents->SetEndPoints({0, 0}, {200, 200});
|
||||
contents->SetColors(std::move(colors));
|
||||
contents->SetStops(std::move(stops));
|
||||
contents->SetTileMode(tile_mode);
|
||||
contents->SetEffectTransform(matrix);
|
||||
return contents;
|
||||
};
|
||||
paint.color = Color(1.0, 1.0, 1.0, alpha);
|
||||
canvas.DrawRect({0, 0, 600, 600}, paint);
|
||||
return renderer.Render(canvas.EndRecordingAsPicture(), render_target);
|
||||
auto contents = std::make_shared<LinearGradientContents>();
|
||||
contents->SetEndPoints({0, 0}, {200, 200});
|
||||
contents->SetColors(std::move(colors));
|
||||
contents->SetStops(std::move(stops));
|
||||
contents->SetTileMode(tile_mode);
|
||||
return contents;
|
||||
};
|
||||
ASSERT_TRUE(OpenPlaygroundHere(callback));
|
||||
paint.color = Color(1.0, 1.0, 1.0, 1.0);
|
||||
canvas.DrawRect({0, 0, 600, 600}, paint);
|
||||
canvas.Restore();
|
||||
ASSERT_TRUE(aiks_test->OpenPlaygroundHere(canvas.EndRecordingAsPicture()));
|
||||
}
|
||||
} // namespace
|
||||
|
||||
TEST_P(AiksTest, CanRenderLinearGradientManyColorsClamp) {
|
||||
CanRenderLinearGradientManyColors(this, Entity::TileMode::kClamp);
|
||||
}
|
||||
TEST_P(AiksTest, CanRenderLinearGradientManyColorsRepeat) {
|
||||
CanRenderLinearGradientManyColors(this, Entity::TileMode::kRepeat);
|
||||
}
|
||||
TEST_P(AiksTest, CanRenderLinearGradientManyColorsMirror) {
|
||||
CanRenderLinearGradientManyColors(this, Entity::TileMode::kMirror);
|
||||
}
|
||||
TEST_P(AiksTest, CanRenderLinearGradientManyColorsDecal) {
|
||||
CanRenderLinearGradientManyColors(this, Entity::TileMode::kDecal);
|
||||
}
|
||||
|
||||
TEST_P(AiksTest, CanRenderLinearGradientWayManyColors) {
|
||||
@ -740,51 +678,39 @@ TEST_P(AiksTest, CanRenderRadialGradientManyColors) {
|
||||
ASSERT_TRUE(OpenPlaygroundHere(callback));
|
||||
}
|
||||
|
||||
TEST_P(AiksTest, CanRenderSweepGradient) {
|
||||
auto callback = [&](AiksContext& renderer, RenderTarget& render_target) {
|
||||
const char* tile_mode_names[] = {"Clamp", "Repeat", "Mirror", "Decal"};
|
||||
const Entity::TileMode tile_modes[] = {
|
||||
Entity::TileMode::kClamp, Entity::TileMode::kRepeat,
|
||||
Entity::TileMode::kMirror, Entity::TileMode::kDecal};
|
||||
|
||||
static int selected_tile_mode = 0;
|
||||
ImGui::Begin("Controls", nullptr, ImGuiWindowFlags_AlwaysAutoResize);
|
||||
ImGui::Combo("Tile mode", &selected_tile_mode, tile_mode_names,
|
||||
sizeof(tile_mode_names) / sizeof(char*));
|
||||
static Matrix matrix = {
|
||||
1, 0, 0, 0, //
|
||||
0, 1, 0, 0, //
|
||||
0, 0, 1, 0, //
|
||||
0, 0, 0, 1 //
|
||||
};
|
||||
std::string label = "##1";
|
||||
for (int i = 0; i < 4; i++) {
|
||||
ImGui::InputScalarN(label.c_str(), ImGuiDataType_Float, &(matrix.vec[i]),
|
||||
4, NULL, NULL, "%.2f", 0);
|
||||
label[2]++;
|
||||
}
|
||||
ImGui::End();
|
||||
|
||||
Canvas canvas;
|
||||
Paint paint;
|
||||
canvas.Translate({100.0, 100.0, 0});
|
||||
auto tile_mode = tile_modes[selected_tile_mode];
|
||||
paint.color_source = [tile_mode]() {
|
||||
auto contents = std::make_shared<SweepGradientContents>();
|
||||
contents->SetCenterAndAngles({100, 100}, Degrees(45), Degrees(135));
|
||||
std::vector<Color> colors = {Color{0.9568, 0.2627, 0.2118, 1.0},
|
||||
Color{0.1294, 0.5882, 0.9529, 1.0}};
|
||||
std::vector<Scalar> stops = {0.0, 1.0};
|
||||
contents->SetColors(std::move(colors));
|
||||
contents->SetStops(std::move(stops));
|
||||
contents->SetTileMode(tile_mode);
|
||||
contents->SetEffectTransform(matrix);
|
||||
return contents;
|
||||
};
|
||||
canvas.DrawRect({0, 0, 600, 600}, paint);
|
||||
return renderer.Render(canvas.EndRecordingAsPicture(), render_target);
|
||||
namespace {
|
||||
void CanRenderSweepGradient(AiksTest* aiks_test, Entity::TileMode tile_mode) {
|
||||
Canvas canvas;
|
||||
canvas.Scale(aiks_test->GetContentScale());
|
||||
Paint paint;
|
||||
canvas.Translate({100, 100, 0});
|
||||
paint.color_source = [tile_mode]() {
|
||||
auto contents = std::make_shared<SweepGradientContents>();
|
||||
contents->SetCenterAndAngles({100, 100}, Degrees(45), Degrees(135));
|
||||
std::vector<Color> colors = {Color{0.9568, 0.2627, 0.2118, 1.0},
|
||||
Color{0.1294, 0.5882, 0.9529, 1.0}};
|
||||
std::vector<Scalar> stops = {0.0, 1.0};
|
||||
contents->SetColors(std::move(colors));
|
||||
contents->SetStops(std::move(stops));
|
||||
contents->SetTileMode(tile_mode);
|
||||
return contents;
|
||||
};
|
||||
ASSERT_TRUE(OpenPlaygroundHere(callback));
|
||||
canvas.DrawRect({0, 0, 600, 600}, paint);
|
||||
ASSERT_TRUE(aiks_test->OpenPlaygroundHere(canvas.EndRecordingAsPicture()));
|
||||
}
|
||||
} // namespace
|
||||
|
||||
TEST_P(AiksTest, CanRenderSweepGradientClamp) {
|
||||
CanRenderSweepGradient(this, Entity::TileMode::kClamp);
|
||||
}
|
||||
TEST_P(AiksTest, CanRenderSweepGradientRepeat) {
|
||||
CanRenderSweepGradient(this, Entity::TileMode::kRepeat);
|
||||
}
|
||||
TEST_P(AiksTest, CanRenderSweepGradientMirror) {
|
||||
CanRenderSweepGradient(this, Entity::TileMode::kMirror);
|
||||
}
|
||||
TEST_P(AiksTest, CanRenderSweepGradientDecal) {
|
||||
CanRenderSweepGradient(this, Entity::TileMode::kDecal);
|
||||
}
|
||||
|
||||
TEST_P(AiksTest, CanRenderSweepGradientManyColors) {
|
||||
|
||||
@ -58,12 +58,9 @@ void GoldenPlaygroundTest::SetUp() {
|
||||
}
|
||||
|
||||
std::string test_name = GetTestName();
|
||||
if (test_name == "impeller_Play_AiksTest_CanRenderTiledTexture_Metal" ||
|
||||
test_name ==
|
||||
if (test_name ==
|
||||
"impeller_Play_AiksTest_CanRenderLinearGradientWithOverlappingStops_"
|
||||
"Metal" ||
|
||||
test_name ==
|
||||
"impeller_Play_AiksTest_CanRenderLinearGradientManyColors_Metal" ||
|
||||
test_name ==
|
||||
"impeller_Play_AiksTest_CanRenderLinearGradientWayManyColors_Metal" ||
|
||||
test_name ==
|
||||
@ -72,7 +69,6 @@ void GoldenPlaygroundTest::SetUp() {
|
||||
test_name == "impeller_Play_AiksTest_CanRenderRadialGradient_Metal" ||
|
||||
test_name ==
|
||||
"impeller_Play_AiksTest_CanRenderRadialGradientManyColors_Metal" ||
|
||||
test_name == "impeller_Play_AiksTest_CanRenderSweepGradient_Metal" ||
|
||||
test_name ==
|
||||
"impeller_Play_AiksTest_CanRenderSweepGradientManyColors_Metal" ||
|
||||
test_name == "impeller_Play_AiksTest_CanPictureConvertToImage_Metal" ||
|
||||
@ -84,8 +80,7 @@ void GoldenPlaygroundTest::SetUp() {
|
||||
test_name ==
|
||||
"impeller_Play_AiksTest_"
|
||||
"CoverageOriginShouldBeAccountedForInSubpasses_Metal" ||
|
||||
test_name == "impeller_Play_AiksTest_SceneColorSource_Metal" ||
|
||||
test_name == "impeller_Play_AiksTest_CanRenderLinearGradient_Metal") {
|
||||
test_name == "impeller_Play_AiksTest_SceneColorSource_Metal") {
|
||||
GTEST_SKIP_(
|
||||
"GoldenPlaygroundTest doesn't support interactive playground tests "
|
||||
"yet.");
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user