Index: ui/gfx/render_text_unittest.cc |
diff --git a/ui/gfx/render_text_unittest.cc b/ui/gfx/render_text_unittest.cc |
index 542939ea3081369af9a50fdf080f3490eaa7d3d8..44551e9ddd0cc8a3bf974ff3dac2eeb30e120010 100644 |
--- a/ui/gfx/render_text_unittest.cc |
+++ b/ui/gfx/render_text_unittest.cc |
@@ -28,6 +28,12 @@ |
#include "ui/gfx/platform_font_win.h" |
#endif |
+#if defined(OS_MACOSX) |
+#include <ApplicationServices/ApplicationServices.h> |
+ |
+#include "ui/gfx/render_text_mac.h" |
+#endif |
+ |
using base::ASCIIToUTF16; |
using base::UTF8ToUTF16; |
using base::WideToUTF16; |
@@ -2608,4 +2614,24 @@ TEST_F(RenderTextTest, TextDoesntClip) { |
} |
} |
+#if defined(OS_MACOSX) |
+TEST_F(RenderTextTest, Mac_ElidedText) { |
+ RenderTextMac render_text; |
+ base::string16 text(ASCIIToUTF16("This is an example.")); |
+ render_text.SetText(text); |
+ render_text.EnsureLayout(); |
+ // NOTE: Character and glyph counts are only comparable for simple text. |
+ EXPECT_EQ(text.size(), |
+ static_cast<size_t>(CTLineGetGlyphCount(render_text.line_))); |
+ |
+ render_text.SetElideBehavior(ELIDE_TAIL); |
+ gfx::Size string_size = render_text.GetStringSize(); |
+ string_size.set_width(string_size.width() / 2); |
+ render_text.SetDisplayRect(gfx::Rect(string_size)); |
+ render_text.EnsureLayout(); |
+ EXPECT_GT(text.size(), |
+ static_cast<size_t>(CTLineGetGlyphCount(render_text.line_))); |
+} |
tapted
2015/03/03 08:11:21
For example, adding a check here:
EXPECT_NE(0u,
Jun Mukai
2015/03/03 08:34:00
In case of non-specified display-rect, I think it
|
+#endif |
+ |
} // namespace gfx |