| Index: ui/views/corewm/tooltip_aura_unittest.cc
|
| diff --git a/ui/views/corewm/tooltip_aura_unittest.cc b/ui/views/corewm/tooltip_aura_unittest.cc
|
| deleted file mode 100644
|
| index a77db2f0b108a4c2eb1891ec3d4d02e2caf8e066..0000000000000000000000000000000000000000
|
| --- a/ui/views/corewm/tooltip_aura_unittest.cc
|
| +++ /dev/null
|
| @@ -1,131 +0,0 @@
|
| -// Copyright 2013 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "ui/views/corewm/tooltip_aura.h"
|
| -
|
| -#include "base/strings/utf_string_conversions.h"
|
| -#include "ui/aura/test/aura_test_base.h"
|
| -#include "ui/gfx/font_list.h"
|
| -#include "ui/gfx/text_elider.h"
|
| -#include "ui/gfx/text_utils.h"
|
| -
|
| -using base::ASCIIToUTF16;
|
| -using base::UTF8ToUTF16;
|
| -
|
| -namespace views {
|
| -namespace corewm {
|
| -
|
| -typedef aura::test::AuraTestBase TooltipAuraTest;
|
| -
|
| -TEST_F(TooltipAuraTest, TrimTooltipToFitTests) {
|
| - const gfx::FontList font_list;
|
| - const int max_width = 4000;
|
| - base::string16 tooltip;
|
| - int width, line_count, expect_lines;
|
| - int max_pixel_width = 400; // copied from constants in tooltip_controller.cc
|
| - int max_lines = 10; // copied from constants in tooltip_controller.cc
|
| - size_t tooltip_len;
|
| -
|
| - // Error in computed size vs. expected size should not be greater than the
|
| - // size of the longest word.
|
| - int error_in_pixel_width = gfx::GetStringWidth(ASCIIToUTF16("tooltip"),
|
| - font_list);
|
| -
|
| - // Long tooltips should wrap to next line
|
| - tooltip.clear();
|
| - width = line_count = -1;
|
| - expect_lines = 3;
|
| - for (; gfx::GetStringWidth(tooltip, font_list) <=
|
| - (expect_lines - 1) * max_pixel_width;)
|
| - tooltip.append(ASCIIToUTF16("This is part of the tooltip"));
|
| - tooltip_len = tooltip.length();
|
| - TooltipAura::TrimTooltipToFit(font_list, max_width, &tooltip, &width,
|
| - &line_count);
|
| - EXPECT_NEAR(max_pixel_width, width, error_in_pixel_width);
|
| - EXPECT_EQ(expect_lines, line_count);
|
| - EXPECT_EQ(tooltip_len + expect_lines - 1, tooltip.length());
|
| -
|
| - // More than |max_lines| lines should get truncated at 10 lines.
|
| - tooltip.clear();
|
| - width = line_count = -1;
|
| - expect_lines = 13;
|
| - for (; gfx::GetStringWidth(tooltip, font_list) <=
|
| - (expect_lines - 1) * max_pixel_width;)
|
| - tooltip.append(ASCIIToUTF16("This is part of the tooltip"));
|
| - TooltipAura::TrimTooltipToFit(font_list, max_width, &tooltip, &width,
|
| - &line_count);
|
| - EXPECT_NEAR(max_pixel_width, width, error_in_pixel_width);
|
| - EXPECT_EQ(max_lines, line_count);
|
| -
|
| - // Long multi line tooltips should wrap individual lines.
|
| - tooltip.clear();
|
| - width = line_count = -1;
|
| - expect_lines = 4;
|
| - for (; gfx::GetStringWidth(tooltip, font_list) <=
|
| - (expect_lines - 2) * max_pixel_width;)
|
| - tooltip.append(ASCIIToUTF16("This is part of the tooltip"));
|
| - tooltip.insert(tooltip.length() / 2, ASCIIToUTF16("\n"));
|
| - tooltip_len = tooltip.length();
|
| - TooltipAura::TrimTooltipToFit(font_list, max_width, &tooltip, &width,
|
| - &line_count);
|
| - EXPECT_NEAR(max_pixel_width, width, error_in_pixel_width);
|
| - EXPECT_EQ(expect_lines, line_count);
|
| - // We may have inserted the line break above near a space which will get
|
| - // trimmed. Hence we may be off by 1 in the final tooltip length calculation.
|
| - EXPECT_NEAR(tooltip_len + expect_lines - 2, tooltip.length(), 1);
|
| -
|
| -#if !defined(OS_WIN)
|
| - // Tooltip with really long word gets elided.
|
| - tooltip.clear();
|
| - width = line_count = -1;
|
| - tooltip = UTF8ToUTF16(std::string('a', max_pixel_width));
|
| - TooltipAura::TrimTooltipToFit(font_list, max_width, &tooltip, &width,
|
| - &line_count);
|
| - EXPECT_NEAR(max_pixel_width, width, 5);
|
| - EXPECT_EQ(1, line_count);
|
| - EXPECT_EQ(gfx::ElideText(UTF8ToUTF16(std::string('a', max_pixel_width)),
|
| - font_list, max_pixel_width, gfx::ELIDE_TAIL),
|
| - tooltip);
|
| -#endif
|
| -
|
| - // Normal small tooltip should stay as is.
|
| - tooltip.clear();
|
| - width = line_count = -1;
|
| - tooltip = ASCIIToUTF16("Small Tooltip");
|
| - TooltipAura::TrimTooltipToFit(font_list, max_width, &tooltip, &width,
|
| - &line_count);
|
| - EXPECT_EQ(gfx::GetStringWidth(ASCIIToUTF16("Small Tooltip"), font_list),
|
| - width);
|
| - EXPECT_EQ(1, line_count);
|
| - EXPECT_EQ(ASCIIToUTF16("Small Tooltip"), tooltip);
|
| -
|
| - // Normal small multi-line tooltip should stay as is.
|
| - tooltip.clear();
|
| - width = line_count = -1;
|
| - tooltip = ASCIIToUTF16("Multi line\nTooltip");
|
| - TooltipAura::TrimTooltipToFit(font_list, max_width, &tooltip, &width,
|
| - &line_count);
|
| - int expected_width = gfx::GetStringWidth(ASCIIToUTF16("Multi line"),
|
| - font_list);
|
| - expected_width = std::max(expected_width,
|
| - gfx::GetStringWidth(ASCIIToUTF16("Tooltip"),
|
| - font_list));
|
| - EXPECT_EQ(expected_width, width);
|
| - EXPECT_EQ(2, line_count);
|
| - EXPECT_EQ(ASCIIToUTF16("Multi line\nTooltip"), tooltip);
|
| -
|
| - // Whitespaces in tooltips are preserved.
|
| - tooltip.clear();
|
| - width = line_count = -1;
|
| - tooltip = ASCIIToUTF16("Small Tool t\tip");
|
| - TooltipAura::TrimTooltipToFit(font_list, max_width, &tooltip, &width,
|
| - &line_count);
|
| - EXPECT_EQ(gfx::GetStringWidth(ASCIIToUTF16("Small Tool t\tip"), font_list),
|
| - width);
|
| - EXPECT_EQ(1, line_count);
|
| - EXPECT_EQ(ASCIIToUTF16("Small Tool t\tip"), tooltip);
|
| -}
|
| -
|
| -} // namespace corewm
|
| -} // namespace views
|
|
|