Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(332)

Side by Side Diff: chrome/browser/ui/cocoa/location_bar/verbose_state_bubble_decoration_unittest.mm

Issue 2119033002: [Material][Mac] Implement Omnibox Verbose State Chips (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: nit Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #import <Cocoa/Cocoa.h> 5 #import <Cocoa/Cocoa.h>
6 6
7 #import "chrome/browser/ui/cocoa/location_bar/ev_bubble_decoration.h" 7 #import "chrome/browser/ui/cocoa/location_bar/verbose_state_bubble_decoration.h"
8 8
9 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h" 9 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h"
10 #import "chrome/browser/ui/cocoa/location_bar/location_icon_decoration.h"
10 #include "testing/gtest/include/gtest/gtest.h" 11 #include "testing/gtest/include/gtest/gtest.h"
11 12
12 namespace { 13 namespace {
13 14
14 class EVBubbleDecorationTest : public CocoaTest { 15 class VerboseStateBubbleDecorationTest : public CocoaTest {
15 public: 16 public:
16 EVBubbleDecorationTest() : decoration_(NULL) { 17 VerboseStateBubbleDecorationTest() : icon_(NULL), decoration_(&icon_, NULL) {}
Robert Sesek 2016/08/16 22:25:33 NULL -> nullptr
spqchan 2016/08/17 00:41:18 Done.
17 }
18 18
19 EVBubbleDecoration decoration_; 19 LocationIconDecoration icon_;
20 VerboseStateBubbleDecoration decoration_;
20 }; 21 };
21 22
22 // Test that the decoration gets smaller when there's not enough space 23 // Test that the decoration gets smaller when there's not enough space
23 // to fit, within bounds. 24 // to fit, within bounds.
24 TEST_F(EVBubbleDecorationTest, MiddleElide) { 25 TEST_F(VerboseStateBubbleDecorationTest, MiddleElide) {
25 NSString* kLongString = @"A very long string with spaces"; 26 NSString* kLongString = @"A very long string with spaces";
26 const CGFloat kWide = 1000.0; // Wide enough to fit everything. 27 const CGFloat kWide = 1000.0; // Wide enough to fit everything.
27 const CGFloat kNarrow = 10.0; // Too narrow for anything. 28 const CGFloat kNarrow = 10.0; // Too narrow for anything.
28 const CGFloat kMinimumWidth = 100.0; // Never should get this small. 29 const CGFloat kMinimumWidth = 100.0; // Never should get this small.
29 30
30 const NSSize kImageSize = NSMakeSize(20.0, 20.0); 31 const NSSize kImageSize = NSMakeSize(20.0, 20.0);
31 base::scoped_nsobject<NSImage> image( 32 base::scoped_nsobject<NSImage> image(
32 [[NSImage alloc] initWithSize:kImageSize]); 33 [[NSImage alloc] initWithSize:kImageSize]);
33 34
34 decoration_.SetImage(image); 35 decoration_.SetImage(image);
35 decoration_.SetFullLabel(kLongString); 36 decoration_.SetFullLabel(kLongString);
36 37
37 // Lots of space, decoration not omitted. 38 // Lots of space, decoration not omitted.
38 EXPECT_NE(decoration_.GetWidthForSpace(kWide), 39 EXPECT_NE(decoration_.GetWidthForSpace(kWide),
39 LocationBarDecoration::kOmittedWidth); 40 LocationBarDecoration::kOmittedWidth);
40 41
41 // If the available space is of the same magnitude as the required 42 // If the available space is of the same magnitude as the required
42 // space, the decoration doesn't eat it all up. 43 // space, the decoration doesn't eat it all up.
43 const CGFloat long_width = decoration_.GetWidthForSpace(kWide); 44 const CGFloat long_width = decoration_.GetWidthForSpace(kWide);
44 EXPECT_NE(decoration_.GetWidthForSpace(long_width + 20.0), 45 EXPECT_NE(decoration_.GetWidthForSpace(long_width + 20.0),
45 LocationBarDecoration::kOmittedWidth); 46 LocationBarDecoration::kOmittedWidth);
46 EXPECT_LT(decoration_.GetWidthForSpace(long_width + 20.0), long_width); 47 EXPECT_LT(decoration_.GetWidthForSpace(long_width + 20.0), long_width);
47 48
48 // If there is very little space, the decoration is still relatively 49 // If there is very little space, the decoration is still relatively
49 // big. 50 // big.
50 EXPECT_NE(decoration_.GetWidthForSpace(kNarrow), 51 EXPECT_NE(decoration_.GetWidthForSpace(kNarrow),
51 LocationBarDecoration::kOmittedWidth); 52 LocationBarDecoration::kOmittedWidth);
52 EXPECT_GT(decoration_.GetWidthForSpace(kNarrow), kMinimumWidth); 53 EXPECT_GT(decoration_.GetWidthForSpace(kNarrow), kMinimumWidth);
53 } 54 }
54 55
55 } // namespace 56 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698