From cc610c27ad56c54ba6a5a131bc865844bfdb6d3e Mon Sep 17 00:00:00 2001 From: garyqian Date: Thu, 2 Jan 2020 22:01:24 -0500 Subject: [PATCH 1/3] Fix bug, update tests, disable incompatible test on mac --- third_party/txt/src/txt/paragraph_txt.cc | 3 +-- third_party/txt/src/txt/paragraph_txt.h | 2 +- third_party/txt/tests/paragraph_unittests.cc | 26 ++++++++++---------- 3 files changed, 15 insertions(+), 16 deletions(-) diff --git a/third_party/txt/src/txt/paragraph_txt.cc b/third_party/txt/src/txt/paragraph_txt.cc index 3c8a9e2624314..f479d16412c7e 100644 --- a/third_party/txt/src/txt/paragraph_txt.cc +++ b/third_party/txt/src/txt/paragraph_txt.cc @@ -1753,8 +1753,7 @@ std::vector ParagraphTxt::GetRectsForRange( } else if (rect_height_style == RectHeightStyle::kMax) { for (const Paragraph::TextBox& box : kv.second.boxes) { boxes.emplace_back( - SkRect::MakeLTRB(box.rect.fLeft, - line.baseline - line.unscaled_ascent, + SkRect::MakeLTRB(box.rect.fLeft, line.baseline - line.ascent, box.rect.fRight, line.baseline + line.descent), box.direction); } diff --git a/third_party/txt/src/txt/paragraph_txt.h b/third_party/txt/src/txt/paragraph_txt.h index 9a0e2681f2039..7cb1cce73f8e2 100644 --- a/third_party/txt/src/txt/paragraph_txt.h +++ b/third_party/txt/src/txt/paragraph_txt.h @@ -146,7 +146,7 @@ class ParagraphTxt : public Paragraph { FRIEND_TEST(ParagraphTest, DISABLED_ArabicParagraph); FRIEND_TEST(ParagraphTest, SpacingParagraph); FRIEND_TEST(ParagraphTest, LongWordParagraph); - FRIEND_TEST(ParagraphTest, KernScaleParagraph); + FRIEND_TEST_LINUX_ONLY(ParagraphTest, KernScaleParagraph); FRIEND_TEST_WINDOWS_DISABLED(ParagraphTest, NewlineParagraph); FRIEND_TEST_LINUX_ONLY(ParagraphTest, EmojiParagraph); FRIEND_TEST_LINUX_ONLY(ParagraphTest, EmojiMultiLineRectsParagraph); diff --git a/third_party/txt/tests/paragraph_unittests.cc b/third_party/txt/tests/paragraph_unittests.cc index c6ffe5a20f03c..1b7dc2f0eae6a 100644 --- a/third_party/txt/tests/paragraph_unittests.cc +++ b/third_party/txt/tests/paragraph_unittests.cc @@ -4461,7 +4461,7 @@ TEST_F(ParagraphTest, LongWordParagraph) { ASSERT_TRUE(Snapshot()); } -TEST_F(ParagraphTest, KernScaleParagraph) { +TEST_F(ParagraphTest, LINUX_ONLY(KernScaleParagraph)) { float scale = 3.0f; txt::ParagraphStyle paragraph_style; @@ -5379,7 +5379,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(StrutParagraph2)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 0); - EXPECT_NEAR(boxes[0].rect.top(), 24, 0.0001); + EXPECT_NEAR(boxes[0].rect.top(), 0, 0.0001); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 50); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 80); @@ -5401,7 +5401,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(StrutParagraph2)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 300); - EXPECT_NEAR(boxes[0].rect.top(), 24, 0.0001); + EXPECT_NEAR(boxes[0].rect.top(), 0, 0.0001); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 500); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 80); @@ -5412,7 +5412,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(StrutParagraph2)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 0); - EXPECT_NEAR(boxes[0].rect.top(), 184, 0.0001); + EXPECT_NEAR(boxes[0].rect.top(), 160, 0.0001); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 100); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 240); @@ -5423,7 +5423,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(StrutParagraph2)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 50); - EXPECT_FLOAT_EQ(boxes[0].rect.top(), 264); + EXPECT_FLOAT_EQ(boxes[0].rect.top(), 240); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 300); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 320); @@ -5505,7 +5505,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(StrutParagraph3)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 0); - EXPECT_NEAR(boxes[0].rect.top(), 8, 0.0001); + EXPECT_NEAR(boxes[0].rect.top(), 0, 0.0001); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 50); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 60); @@ -5527,7 +5527,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(StrutParagraph3)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 300); - EXPECT_NEAR(boxes[0].rect.top(), 8, 0.0001); + EXPECT_NEAR(boxes[0].rect.top(), 0, 0.0001); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 500); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 60); @@ -5538,7 +5538,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(StrutParagraph3)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 0); - EXPECT_FLOAT_EQ(boxes[0].rect.top(), 128); + EXPECT_FLOAT_EQ(boxes[0].rect.top(), 120); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 100); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 180); @@ -5549,7 +5549,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(StrutParagraph3)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 50); - EXPECT_FLOAT_EQ(boxes[0].rect.top(), 188); + EXPECT_FLOAT_EQ(boxes[0].rect.top(), 180); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 300); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 240); @@ -5632,7 +5632,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(StrutForceParagraph)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 0); - EXPECT_NEAR(boxes[0].rect.top(), 22.5, 0.0001); + EXPECT_NEAR(boxes[0].rect.top(), 0, 0.0001); ; EXPECT_FLOAT_EQ(boxes[0].rect.right(), 50); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 80); @@ -5655,7 +5655,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(StrutForceParagraph)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 300); - EXPECT_NEAR(boxes[0].rect.top(), 22.5, 0.0001); + EXPECT_NEAR(boxes[0].rect.top(), 0, 0.0001); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 500); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 80); @@ -5666,7 +5666,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(StrutForceParagraph)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 0); - EXPECT_NEAR(boxes[0].rect.top(), 182.5, 0.0001); + EXPECT_NEAR(boxes[0].rect.top(), 160, 0.0001); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 100); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 240); @@ -5677,7 +5677,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(StrutForceParagraph)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 50); - EXPECT_FLOAT_EQ(boxes[0].rect.top(), 262.5); + EXPECT_FLOAT_EQ(boxes[0].rect.top(), 240); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 300); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 320); From bef1d68949ea023ace51bb1eb83910877ff61a91 Mon Sep 17 00:00:00 2001 From: garyqian Date: Fri, 3 Jan 2020 13:10:59 -0500 Subject: [PATCH 2/3] Fix additional test: --- third_party/txt/tests/paragraph_unittests.cc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/third_party/txt/tests/paragraph_unittests.cc b/third_party/txt/tests/paragraph_unittests.cc index 1b7dc2f0eae6a..31375f50cd332 100644 --- a/third_party/txt/tests/paragraph_unittests.cc +++ b/third_party/txt/tests/paragraph_unittests.cc @@ -5253,7 +5253,7 @@ TEST_F(ParagraphTest, LINUX_ONLY(StrutParagraph1)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 0); - EXPECT_NEAR(boxes[0].rect.top(), 34.5, 0.0001); + EXPECT_NEAR(boxes[0].rect.top(), 0, 0.0001); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 50); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 95); @@ -5276,7 +5276,7 @@ TEST_F(ParagraphTest, LINUX_ONLY(StrutParagraph1)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 300); - EXPECT_NEAR(boxes[0].rect.top(), 34.5, 0.0001); + EXPECT_NEAR(boxes[0].rect.top(), 0, 0.0001); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 500); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 95); @@ -5287,7 +5287,7 @@ TEST_F(ParagraphTest, LINUX_ONLY(StrutParagraph1)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 0); - EXPECT_NEAR(boxes[0].rect.top(), 224.5, 0.0001); + EXPECT_NEAR(boxes[0].rect.top(), 190, 0.0001); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 100); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 285); @@ -5298,7 +5298,7 @@ TEST_F(ParagraphTest, LINUX_ONLY(StrutParagraph1)) { } EXPECT_EQ(boxes.size(), 1ull); EXPECT_FLOAT_EQ(boxes[0].rect.left(), 50); - EXPECT_FLOAT_EQ(boxes[0].rect.top(), 319.5); + EXPECT_FLOAT_EQ(boxes[0].rect.top(), 285); EXPECT_FLOAT_EQ(boxes[0].rect.right(), 300); EXPECT_FLOAT_EQ(boxes[0].rect.bottom(), 380); From c55a7bb307ce83032f7b96dfbdd64ec470f2753e Mon Sep 17 00:00:00 2001 From: GaryQian Date: Mon, 6 Jan 2020 11:23:41 -0800 Subject: [PATCH 3/3] empty to kick tests