Flutter Engine
The Flutter Engine
Classes | Namespaces | Functions | Variables
aiks_unittests.cc File Reference
#include "flutter/impeller/aiks/aiks_unittests.h"
#include <array>
#include <cmath>
#include <cstdlib>
#include <memory>
#include <tuple>
#include <utility>
#include <vector>
#include "flutter/testing/testing.h"
#include "gtest/gtest.h"
#include "impeller/aiks/canvas.h"
#include "impeller/aiks/color_filter.h"
#include "impeller/aiks/image.h"
#include "impeller/aiks/image_filter.h"
#include "impeller/aiks/testing/context_spy.h"
#include "impeller/core/device_buffer.h"
#include "impeller/entity/contents/solid_color_contents.h"
#include "impeller/geometry/color.h"
#include "impeller/geometry/constants.h"
#include "impeller/geometry/geometry_asserts.h"
#include "impeller/geometry/matrix.h"
#include "impeller/geometry/path.h"
#include "impeller/geometry/path_builder.h"
#include "impeller/geometry/rect.h"
#include "impeller/geometry/size.h"
#include "impeller/playground/widgets.h"
#include "impeller/renderer/command_buffer.h"
#include "impeller/renderer/snapshot.h"
#include "impeller/typographer/backends/skia/text_frame_skia.h"
#include "impeller/typographer/backends/stb/text_frame_stb.h"
#include "impeller/typographer/backends/stb/typeface_stb.h"
#include "impeller/typographer/backends/stb/typographer_context_stb.h"
#include "third_party/imgui/imgui.h"
#include "third_party/skia/include/core/SkFontMgr.h"
#include "txt/platform.h"

Go to the source code of this file.

Classes

struct  impeller::testing::TextRenderOptions
 

Namespaces

namespace  impeller
 
namespace  impeller::testing
 

Functions

 impeller::testing::INSTANTIATE_PLAYGROUND_SUITE (AiksTest)
 
 impeller::testing::TEST_P (AiksTest, CanvasCTMCanBeUpdated)
 
 impeller::testing::TEST_P (AiksTest, CanvasCanPushPopCTM)
 
 impeller::testing::TEST_P (AiksTest, CanRenderColoredRect)
 
 impeller::testing::TEST_P (AiksTest, CanRenderImage)
 
 impeller::testing::TEST_P (AiksTest, CanRenderInvertedImageWithColorFilter)
 
 impeller::testing::TEST_P (AiksTest, CanRenderColorFilterWithInvertColors)
 
 impeller::testing::TEST_P (AiksTest, CanRenderColorFilterWithInvertColorsDrawPaint)
 
 impeller::testing::TEST_P (AiksTest, CanRenderTiledTextureClamp)
 
 impeller::testing::TEST_P (AiksTest, CanRenderTiledTextureRepeat)
 
 impeller::testing::TEST_P (AiksTest, CanRenderTiledTextureMirror)
 
 impeller::testing::TEST_P (AiksTest, CanRenderTiledTextureDecal)
 
 impeller::testing::TEST_P (AiksTest, CanRenderTiledTextureClampWithTranslate)
 
 impeller::testing::TEST_P (AiksTest, CanRenderImageRect)
 
 impeller::testing::TEST_P (AiksTest, CanRenderSimpleClips)
 
 impeller::testing::TEST_P (AiksTest, CanSaveLayerStandalone)
 
 impeller::testing::TEST_P (AiksTest, CanRenderDifferentShapesWithSameColorSource)
 
 impeller::testing::TEST_P (AiksTest, CanPictureConvertToImage)
 
 impeller::testing::TEST_P (AiksTest, CanEmptyPictureConvertToImage)
 
 impeller::testing::TEST_P (AiksTest, CoordinateConversionsAreCorrect)
 
 impeller::testing::TEST_P (AiksTest, CanPerformFullScreenMSAA)
 
 impeller::testing::TEST_P (AiksTest, CanPerformSkew)
 
 impeller::testing::TEST_P (AiksTest, CanPerformSaveLayerWithBounds)
 
 impeller::testing::TEST_P (AiksTest, CanPerformSaveLayerWithBoundsAndLargerIntermediateIsNotAllocated)
 
 impeller::testing::TEST_P (AiksTest, CanRenderRoundedRectWithNonUniformRadii)
 
bool impeller::testing::RenderTextInCanvasSkia (const std::shared_ptr< Context > &context, Canvas &canvas, const std::string &text, const std::string_view &font_fixture, TextRenderOptions options={})
 
bool impeller::testing::RenderTextInCanvasSTB (const std::shared_ptr< Context > &context, Canvas &canvas, const std::string &text, const std::string &font_fixture, TextRenderOptions options={})
 
 impeller::testing::TEST_P (AiksTest, CanRenderTextFrame)
 
 impeller::testing::TEST_P (AiksTest, CanRenderStrokedTextFrame)
 
 impeller::testing::TEST_P (AiksTest, CanRenderTextFrameWithHalfScaling)
 
 impeller::testing::TEST_P (AiksTest, CanRenderTextFrameWithFractionScaling)
 
 impeller::testing::TEST_P (AiksTest, CanRenderTextFrameSTB)
 
 impeller::testing::TEST_P (AiksTest, TextFrameSubpixelAlignment)
 
 impeller::testing::TEST_P (AiksTest, CanRenderItalicizedText)
 
 impeller::testing::TEST_P (AiksTest, CanRenderEmojiTextFrame)
 
 impeller::testing::TEST_P (AiksTest, CanRenderEmojiTextFrameWithBlur)
 
 impeller::testing::TEST_P (AiksTest, CanRenderEmojiTextFrameWithAlpha)
 
 impeller::testing::TEST_P (AiksTest, CanRenderTextInSaveLayer)
 
 impeller::testing::TEST_P (AiksTest, CanRenderTextOutsideBoundaries)
 
 impeller::testing::TEST_P (AiksTest, TextRotated)
 
 impeller::testing::TEST_P (AiksTest, CanDrawPaint)
 
 impeller::testing::TEST_P (AiksTest, CanDrawPaintMultipleTimes)
 
 impeller::testing::TEST_P (AiksTest, FormatWideGamut)
 
 impeller::testing::TEST_P (AiksTest, FormatSRGB)
 
 impeller::testing::TEST_P (AiksTest, TransformMultipliesCorrectly)
 
 impeller::testing::TEST_P (AiksTest, FilledCirclesRenderCorrectly)
 
 impeller::testing::TEST_P (AiksTest, StrokedCirclesRenderCorrectly)
 
 impeller::testing::TEST_P (AiksTest, FilledEllipsesRenderCorrectly)
 
 impeller::testing::TEST_P (AiksTest, FilledRoundRectsRenderCorrectly)
 
 impeller::testing::TEST_P (AiksTest, SolidColorCirclesOvalsRRectsMaskBlurCorrectly)
 
 impeller::testing::TEST_P (AiksTest, FilledRoundRectPathsRenderCorrectly)
 
 impeller::testing::TEST_P (AiksTest, CoverageOriginShouldBeAccountedForInSubpasses)
 
 impeller::testing::TEST_P (AiksTest, SaveLayerDrawsBehindSubsequentEntities)
 
 impeller::testing::TEST_P (AiksTest, SiblingSaveLayerBoundsAreRespected)
 
 impeller::testing::TEST_P (AiksTest, CanRenderClippedLayers)
 
 impeller::testing::TEST_P (AiksTest, SaveLayerFiltersScaleWithTransform)
 
 impeller::testing::TEST_P (AiksTest, PaintWithFilters)
 
 impeller::testing::TEST_P (AiksTest, DrawPaintAbsorbsClears)
 
 impeller::testing::TEST_P (AiksTest, ParentSaveLayerCreatesRenderPassWhenChildBackdropFilterIsPresent)
 
 impeller::testing::TEST_P (AiksTest, DrawRectAbsorbsClears)
 
 impeller::testing::TEST_P (AiksTest, DrawRectAbsorbsClearsNegativeRRect)
 
 impeller::testing::TEST_P (AiksTest, DrawRectAbsorbsClearsNegativeRotation)
 
 impeller::testing::TEST_P (AiksTest, DrawRectAbsorbsClearsNegative)
 
 impeller::testing::TEST_P (AiksTest, ClipRectElidesNoOpClips)
 
 impeller::testing::TEST_P (AiksTest, ClearColorOptimizationDoesNotApplyForBackdropFilters)
 
 impeller::testing::TEST_P (AiksTest, CollapsedDrawPaintInSubpass)
 
 impeller::testing::TEST_P (AiksTest, CollapsedDrawPaintInSubpassBackdropFilter)
 
 impeller::testing::TEST_P (AiksTest, ColorMatrixFilterSubpassCollapseOptimization)
 
 impeller::testing::TEST_P (AiksTest, LinearToSrgbFilterSubpassCollapseOptimization)
 
 impeller::testing::TEST_P (AiksTest, SrgbToLinearFilterSubpassCollapseOptimization)
 
 impeller::testing::TEST_P (AiksTest, TranslucentSaveLayerDrawsCorrectly)
 
 impeller::testing::TEST_P (AiksTest, TranslucentSaveLayerWithBlendColorFilterDrawsCorrectly)
 
 impeller::testing::TEST_P (AiksTest, TranslucentSaveLayerWithBlendImageFilterDrawsCorrectly)
 
 impeller::testing::TEST_P (AiksTest, TranslucentSaveLayerWithColorAndImageFilterDrawsCorrectly)
 
 impeller::testing::TEST_P (AiksTest, ImageFilteredSaveLayerWithUnboundedContents)
 
 impeller::testing::TEST_P (AiksTest, ImageFilteredUnboundedSaveLayerWithUnboundedContents)
 
 impeller::testing::TEST_P (AiksTest, TranslucentSaveLayerImageDrawsCorrectly)
 
 impeller::testing::TEST_P (AiksTest, TranslucentSaveLayerWithColorMatrixColorFilterDrawsCorrectly)
 
 impeller::testing::TEST_P (AiksTest, TranslucentSaveLayerWithColorMatrixImageFilterDrawsCorrectly)
 
 impeller::testing::TEST_P (AiksTest, TranslucentSaveLayerWithColorFilterAndImageFilterDrawsCorrectly)
 
 impeller::testing::TEST_P (AiksTest, TranslucentSaveLayerWithAdvancedBlendModeDrawsCorrectly)
 
 impeller::testing::TEST_P (AiksTest, CanRenderTinyOverlappingSubpasses)
 
 impeller::testing::TEST_P (AiksTest, OpaqueEntitiesGetCoercedToSource)
 
 impeller::testing::TEST_P (AiksTest, CanRenderDestructiveSaveLayer)
 
 impeller::testing::TEST_P (AiksTest, CanRenderClippedRuntimeEffects)
 
 impeller::testing::TEST_P (AiksTest, DrawPaintTransformsBounds)
 
 impeller::testing::TEST_P (AiksTest, CanDrawPoints)
 
 impeller::testing::TEST_P (AiksTest, CanDrawPointsWithTextureMap)
 
 impeller::testing::TEST_P (AiksTest, TextForegroundShaderWithTransform)
 
 impeller::testing::TEST_P (AiksTest, MatrixSaveLayerFilter)
 
 impeller::testing::TEST_P (AiksTest, MatrixBackdropFilter)
 
 impeller::testing::TEST_P (AiksTest, SolidColorApplyColorFilter)
 
 impeller::testing::TEST_P (AiksTest, DrawScaledTextWithPerspectiveNoSaveLayer)
 
 impeller::testing::TEST_P (AiksTest, DrawScaledTextWithPerspectiveSaveLayer)
 
 impeller::testing::TEST_P (AiksTest, PipelineBlendSingleParameter)
 
 impeller::testing::TEST_P (AiksTest, ReleasesTextureOnTeardown)
 
 impeller::testing::TEST_P (AiksTest, MatrixImageFilterMagnify)
 
 impeller::testing::TEST_P (AiksTest, MatrixImageFilterDoesntCullWhenTranslatedFromOffscreen)
 
 impeller::testing::TEST_P (AiksTest, MatrixImageFilterDoesntCullWhenScaledAndTranslatedFromOffscreen)
 
 impeller::testing::TEST_P (AiksTest, ClearColorOptimizationWhenSubpassIsBiggerThanParentPass)
 
 impeller::testing::TEST_P (AiksTest, EmptySaveLayerIgnoresPaint)
 
 impeller::testing::TEST_P (AiksTest, EmptySaveLayerRendersWithClear)
 
 impeller::testing::TEST_P (AiksTest, SubpassWithClearColorOptimization)
 
 impeller::testing::TEST_P (AiksTest, ImageColorSourceEffectTransform)
 
 impeller::testing::TEST_P (AiksTest, CorrectClipDepthAssignedToEntities)
 
 impeller::testing::TEST_P (AiksTest, CanDrawPerspectiveTransformWithClips)
 
 impeller::testing::TEST_P (AiksTest, CanRenderClippedBackdropFilter)
 
 impeller::testing::TEST_P (AiksTest, MipmapGenerationWorksCorrectly)
 
 impeller::testing::TEST_P (AiksTest, StrokedPathWithMoveToThenCloseDrawnCorrectly)
 
 impeller::testing::TEST_P (AiksTest, CanRenderTextWithLargePerspectiveTransform)
 
 impeller::testing::TEST_P (AiksTest, SetContentsWithRegion)
 

Variables

static constexpr std::string_view impeller::testing::kFontFixture