aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/TextBlobCacheTest.cpp
diff options
context:
space:
mode:
authorGravatar joshualitt <joshualitt@chromium.org>2015-07-31 07:44:11 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-07-31 07:44:11 -0700
commitadcdca86ce425cf8c28bfad311cef028df756ee8 (patch)
treec72f4934604de471910fe03ac27a1e77baa2c3f4 /tests/TextBlobCacheTest.cpp
parent0aff2fa82a5fa9f99aa77327dac3e9e803b4ed07 (diff)
Modifying TextBlobCacheTest to use SkRandomScalerContext
Diffstat (limited to 'tests/TextBlobCacheTest.cpp')
-rw-r--r--tests/TextBlobCacheTest.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/tests/TextBlobCacheTest.cpp b/tests/TextBlobCacheTest.cpp
index 3cbc8a35ad..c42ef89890 100644
--- a/tests/TextBlobCacheTest.cpp
+++ b/tests/TextBlobCacheTest.cpp
@@ -14,6 +14,8 @@
#include "SkGraphics.h"
#include "SkSurface.h"
#include "SkTypeface.h"
+#include "../src/fonts/SkRandomScalerContext.h"
+#include "../src/fonts/SkGScalerContext.h"
#ifdef SK_BUILD_FOR_WIN
#include "SkTypeface_win.h"
@@ -59,7 +61,8 @@ DEF_GPUTEST(TextBlobCache, reporter, factory) {
uint32_t flags = 0;
SkSurfaceProps props(flags, SkSurfaceProps::kLegacyFontHost_InitType);
- GrContext* ctx = factory->get(GrContextFactory::kNative_GLContextType);
+ // We don't typically actually draw with this unittest
+ GrContext* ctx = factory->get(GrContextFactory::kNull_GLContextType);
SkImageInfo info = SkImageInfo::Make(kWidth, kHeight, kN32_SkColorType, kPremul_SkAlphaType);
SkAutoTUnref<SkSurface> surface(SkSurface::NewRenderTarget(ctx, SkSurface::kNo_Budgeted, info,
0, &props));
@@ -94,7 +97,10 @@ DEF_GPUTEST(TextBlobCache, reporter, factory) {
SkFontStyle fs;
set->getStyle(j, &fs, NULL);
- SkSafeUnref(paint.setTypeface(set->createTypeface(j)));
+ // We use a typeface which randomy returns unexpected mask formats to fuzz
+ SkAutoTUnref<SkTypeface> orig(set->createTypeface(j));
+ SkAutoTUnref<SkTypeface> typeface(SkNEW_ARGS(SkRandomTypeface, (orig, paint, true)));
+ paint.setTypeface(typeface);
SkTextBlobBuilder builder;
for (int aa = 0; aa < 2; aa++) {
@@ -103,6 +109,9 @@ DEF_GPUTEST(TextBlobCache, reporter, factory) {
paint.setAntiAlias(SkToBool(aa));
paint.setSubpixelText(SkToBool(subpixel));
paint.setLCDRenderText(SkToBool(lcd));
+ if (!SkToBool(lcd)) {
+ paint.setTextSize(160);
+ }
const SkTextBlobBuilder::RunBuffer& run = builder.allocRun(paint,
MAX_TOTAL_TEXT,
0, 0,