diff options
author | Hal Canary <halcanary@google.com> | 2018-04-10 11:27:48 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-05-09 14:24:45 +0000 |
commit | 1c2bcd8b14e029a70e88b1e81acd29553cab0d1c (patch) | |
tree | 723a0c85100bcb59590bd2e46fc5eb5c10472406 /tests | |
parent | a2595f925596aca234d4ac4e35da689ef13cc27c (diff) |
SkAdvancedTypefaceMetrics: factor out GlyphToUnicode
Change-Id: Iedce8c1ea2c405d5ab64ccac353970d5cd2b9d63
Reviewed-on: https://skia-review.googlesource.com/126507
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/FontMgrTest.cpp | 1 | ||||
-rw-r--r-- | tests/PDFGlyphsToUnicodeTest.cpp | 18 | ||||
-rw-r--r-- | tests/TypefaceTest.cpp | 11 |
3 files changed, 20 insertions, 10 deletions
diff --git a/tests/FontMgrTest.cpp b/tests/FontMgrTest.cpp index 17a60bbd79..0f035a272f 100644 --- a/tests/FontMgrTest.cpp +++ b/tests/FontMgrTest.cpp @@ -133,6 +133,7 @@ static void test_matchStyleCSS3(skiatest::Reporter* reporter) { return nullptr; } void onFilterRec(SkScalerContextRec*) const override { } + void getGlyphToUnicodeMap(SkUnichar*) const override { } std::unique_ptr<SkAdvancedTypefaceMetrics> onGetAdvancedMetrics() const override { return nullptr; } diff --git a/tests/PDFGlyphsToUnicodeTest.cpp b/tests/PDFGlyphsToUnicodeTest.cpp index 332520bfb0..2aeedf0330 100644 --- a/tests/PDFGlyphsToUnicodeTest.cpp +++ b/tests/PDFGlyphsToUnicodeTest.cpp @@ -74,9 +74,12 @@ DEF_TEST(SkPDF_ToUnicode, reporter) { glyphsInSubset.push(0x101); glyphToUnicode.push(0x1013); + SkGlyphID lastGlyphID = SkToU16(glyphToUnicode.count() - 1); + SkDynamicMemoryWStream buffer; subset.setAll(glyphsInSubset.begin(), glyphsInSubset.count()); - SkPDFAppendCmapSections(glyphToUnicode, &subset, &buffer, true, 0, 0xFFFF); + SkPDFAppendCmapSections(&glyphToUnicode[0], &subset, &buffer, true, 0, + SkTMin<SkGlyphID>(0xFFFF, lastGlyphID)); char expectedResult[] = "4 beginbfchar\n\ @@ -98,7 +101,8 @@ endbfrange\n"; // Remove characters and ranges. buffer.reset(); - SkPDFAppendCmapSections(glyphToUnicode, &subset, &buffer, true, 8, 0x00FF); + SkPDFAppendCmapSections(&glyphToUnicode[0], &subset, &buffer, true, 8, + SkTMin<SkGlyphID>(0x00FF, lastGlyphID)); char expectedResultChop1[] = "2 beginbfchar\n\ @@ -116,7 +120,8 @@ endbfrange\n"; // Remove characters from range to downdrade it to one char. buffer.reset(); - SkPDFAppendCmapSections(glyphToUnicode, &subset, &buffer, true, 0x00D, 0x00FE); + SkPDFAppendCmapSections(&glyphToUnicode[0], &subset, &buffer, true, 0x00D, + SkTMin<SkGlyphID>(0x00FE, lastGlyphID)); char expectedResultChop2[] = "2 beginbfchar\n\ @@ -129,7 +134,8 @@ endbfchar\n"; buffer.reset(); - SkPDFAppendCmapSections(glyphToUnicode, nullptr, &buffer, false, 0xFC, 0x110); + SkPDFAppendCmapSections(&glyphToUnicode[0], nullptr, &buffer, false, 0xFC, + SkTMin<SkGlyphID>(0x110, lastGlyphID)); char expectedResultSingleBytes[] = "2 beginbfchar\n\ @@ -155,6 +161,7 @@ endbfrange\n"; for (SkUnichar i = 0; i < 100; ++i) { glyphToUnicode.push(i + 29); } + lastGlyphID = SkToU16(glyphToUnicode.count() - 1); glyphsInSubset.push(0x2C); glyphsInSubset.push(0x44); @@ -165,7 +172,8 @@ endbfrange\n"; SkDynamicMemoryWStream buffer2; subset2.setAll(glyphsInSubset.begin(), glyphsInSubset.count()); - SkPDFAppendCmapSections(glyphToUnicode, &subset2, &buffer2, true, 0, 0xffff); + SkPDFAppendCmapSections(&glyphToUnicode[0], &subset2, &buffer2, true, 0, + SkTMin<SkGlyphID>(0xFFFF, lastGlyphID)); char expectedResult2[] = "4 beginbfchar\n\ diff --git a/tests/TypefaceTest.cpp b/tests/TypefaceTest.cpp index b6b71aeb8c..d791f750ec 100644 --- a/tests/TypefaceTest.cpp +++ b/tests/TypefaceTest.cpp @@ -203,11 +203,11 @@ DEF_TEST(Typeface, reporter) { namespace { -class SkEmptyTypeface : public SkTypeface { +class EmptyTypeface : public SkTypeface { public: - static sk_sp<SkTypeface> Create() { return sk_sp<SkTypeface>(new SkEmptyTypeface()); } + static sk_sp<SkTypeface> Create() { return sk_sp<SkTypeface>(new EmptyTypeface()); } protected: - SkEmptyTypeface() : SkTypeface(SkFontStyle(), true) { } + EmptyTypeface() : SkTypeface(SkFontStyle(), true) { } SkStreamAsset* onOpenStream(int* ttcIndex) const override { return nullptr; } SkScalerContext* onCreateScalerContext(const SkScalerContextEffects&, @@ -215,6 +215,7 @@ protected: return nullptr; } void onFilterRec(SkScalerContextRec*) const override { } + void getGlyphToUnicodeMap(SkUnichar*) const override { } std::unique_ptr<SkAdvancedTypefaceMetrics> onGetAdvancedMetrics() const override { return nullptr; } @@ -255,12 +256,12 @@ static int count(skiatest::Reporter* reporter, const SkTypefaceCache& cache) { } DEF_TEST(TypefaceCache, reporter) { - sk_sp<SkTypeface> t1(SkEmptyTypeface::Create()); + sk_sp<SkTypeface> t1(EmptyTypeface::Create()); { SkTypefaceCache cache; REPORTER_ASSERT(reporter, count(reporter, cache) == 0); { - sk_sp<SkTypeface> t0(SkEmptyTypeface::Create()); + sk_sp<SkTypeface> t0(EmptyTypeface::Create()); cache.add(t0.get()); REPORTER_ASSERT(reporter, count(reporter, cache) == 1); cache.add(t1.get()); |