aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests
diff options
context:
space:
mode:
authorGravatar fmalita <fmalita@chromium.org>2016-09-13 10:00:23 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2016-09-13 10:00:23 -0700
commit37283c28aa5bea2204c18956e74f83b238d7a891 (patch)
tree6ac125088f1df0c6d9380e323e873c72c8416b0b /tests
parentec44099979acd3e83ad93a15dbd9301856a90572 (diff)
Use sk_sp text blob APIs
SkTextBlobBuilder::build() -> make() SkAutoTUnref<const SkTextBlob> -> sk_sp<SkTextBlob> drawTextBlob(const SkTextBlob*) -> drawTextBlob(const sk_sp<SkTextBlob>&) BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2335493005 Review-Url: https://codereview.chromium.org/2335493005
Diffstat (limited to 'tests')
-rw-r--r--tests/TextBlobCacheTest.cpp16
-rw-r--r--tests/TextBlobTest.cpp24
2 files changed, 16 insertions, 24 deletions
diff --git a/tests/TextBlobCacheTest.cpp b/tests/TextBlobCacheTest.cpp
index cbc6b99f84..964a64ff29 100644
--- a/tests/TextBlobCacheTest.cpp
+++ b/tests/TextBlobCacheTest.cpp
@@ -27,19 +27,11 @@
#include "GrContext.h"
#include "GrTest.h"
-struct TextBlobWrapper {
- // This class assumes it 'owns' the textblob it wraps, and thus does not need to take a ref
- explicit TextBlobWrapper(const SkTextBlob* blob) : fBlob(blob) {}
- TextBlobWrapper(const TextBlobWrapper& blob) : fBlob(SkRef(blob.fBlob.get())) {}
-
- SkAutoTUnref<const SkTextBlob> fBlob;
-};
-
-static void draw(SkCanvas* canvas, int redraw, const SkTArray<TextBlobWrapper>& blobs) {
+static void draw(SkCanvas* canvas, int redraw, const SkTArray<sk_sp<SkTextBlob>>& blobs) {
int yOffset = 0;
for (int r = 0; r < redraw; r++) {
for (int i = 0; i < blobs.count(); i++) {
- const SkTextBlob* blob = blobs[i].fBlob.get();
+ const auto& blob = blobs[i];
const SkRect& bounds = blob->bounds();
yOffset += SkScalarCeilToInt(bounds.height());
SkPaint paint;
@@ -85,7 +77,7 @@ static void text_blob_cache_inner(skiatest::Reporter* reporter, GrContext* conte
}
// generate textblobs
- SkTArray<TextBlobWrapper> blobs;
+ SkTArray<sk_sp<SkTextBlob>> blobs;
for (int i = 0; i < count; i++) {
SkPaint paint;
paint.setTextEncoding(SkPaint::kGlyphID_TextEncoding);
@@ -124,7 +116,7 @@ static void text_blob_cache_inner(skiatest::Reporter* reporter, GrContext* conte
}
}
}
- blobs.emplace_back(builder.build());
+ blobs.emplace_back(builder.make());
}
}
diff --git a/tests/TextBlobTest.cpp b/tests/TextBlobTest.cpp
index 82bbb21a11..dafbe74e69 100644
--- a/tests/TextBlobTest.cpp
+++ b/tests/TextBlobTest.cpp
@@ -104,28 +104,28 @@ public:
// Explicit bounds.
{
- SkAutoTUnref<const SkTextBlob> blob(builder.build());
+ sk_sp<SkTextBlob> blob(builder.make());
REPORTER_ASSERT(reporter, blob->bounds().isEmpty());
}
{
SkRect r1 = SkRect::MakeXYWH(10, 10, 20, 20);
builder.allocRun(font, 16, 0, 0, &r1);
- SkAutoTUnref<const SkTextBlob> blob(builder.build());
+ sk_sp<SkTextBlob> blob(builder.make());
REPORTER_ASSERT(reporter, blob->bounds() == r1);
}
{
SkRect r1 = SkRect::MakeXYWH(10, 10, 20, 20);
builder.allocRunPosH(font, 16, 0, &r1);
- SkAutoTUnref<const SkTextBlob> blob(builder.build());
+ sk_sp<SkTextBlob> blob(builder.make());
REPORTER_ASSERT(reporter, blob->bounds() == r1);
}
{
SkRect r1 = SkRect::MakeXYWH(10, 10, 20, 20);
builder.allocRunPos(font, 16, &r1);
- SkAutoTUnref<const SkTextBlob> blob(builder.build());
+ sk_sp<SkTextBlob> blob(builder.make());
REPORTER_ASSERT(reporter, blob->bounds() == r1);
}
@@ -138,13 +138,13 @@ public:
builder.allocRunPosH(font, 16, 0, &r2);
builder.allocRunPos(font, 16, &r3);
- SkAutoTUnref<const SkTextBlob> blob(builder.build());
+ sk_sp<SkTextBlob> blob(builder.make());
REPORTER_ASSERT(reporter, blob->bounds() == SkRect::MakeXYWH(0, 5, 65, 65));
}
{
// Verify empty blob bounds after building some non-empty blobs.
- SkAutoTUnref<const SkTextBlob> blob(builder.build());
+ sk_sp<SkTextBlob> blob(builder.make());
REPORTER_ASSERT(reporter, blob->bounds().isEmpty());
}
@@ -168,7 +168,7 @@ public:
p.textToGlyphs(txt, txtLen, buffer.glyphs);
memset(buffer.pos, 0, sizeof(SkScalar) * glyphCount * 2);
- SkAutoTUnref<const SkTextBlob> blob(builder.build());
+ sk_sp<SkTextBlob> blob(builder.make());
REPORTER_ASSERT(reporter, blob->bounds().isEmpty());
}
}
@@ -224,9 +224,9 @@ public:
AddRun(font, 1, SkTextBlob::kDefault_Positioning, SkPoint::Make(0, 0), builder);
AddRun(font, 1, SkTextBlob::kHorizontal_Positioning, SkPoint::Make(0, 0), builder);
AddRun(font, 1, SkTextBlob::kFull_Positioning, SkPoint::Make(0, 0), builder);
- SkAutoTUnref<const SkTextBlob> blob(builder.build());
+ sk_sp<SkTextBlob> blob(builder.make());
- SkTextBlobRunIterator it(blob);
+ SkTextBlobRunIterator it(blob.get());
while (!it.done()) {
SkPaint paint;
it.applyFontToPaint(&paint);
@@ -278,9 +278,9 @@ private:
posCount += in[i].count * in[i].pos;
}
- SkAutoTUnref<const SkTextBlob> blob(builder.build());
+ sk_sp<SkTextBlob> blob(builder.make());
- SkTextBlobRunIterator it(blob);
+ SkTextBlobRunIterator it(blob.get());
for (unsigned i = 0; i < outCount; ++i) {
REPORTER_ASSERT(reporter, !it.done());
REPORTER_ASSERT(reporter, out[i].pos == it.positioning());
@@ -368,7 +368,7 @@ DEF_TEST(TextBlob_extended, reporter) {
for (int i = 0; i < glyphCount; ++i) {
run.clusters[i] = SkTMin(SkToU32(i), SkToU32(strlen(text2)));
}
- sk_sp<const SkTextBlob> blob(textBlobBuilder.build());
+ sk_sp<SkTextBlob> blob(textBlobBuilder.make());
REPORTER_ASSERT(reporter, blob);
for (SkTextBlobRunIterator it(blob.get()); !it.done(); it.next()) {