OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "base/memory/scoped_nsobject.h" | 5 #import "base/memory/scoped_nsobject.h" |
6 #import "chrome/browser/ui/cocoa/constrained_window/cw_button.h" | 6 #import "chrome/browser/ui/cocoa/constrained_window/constrained_window_button.h" |
7 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h" | 7 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h" |
8 #include "testing/gtest/include/gtest/gtest.h" | 8 #include "testing/gtest/include/gtest/gtest.h" |
9 #include "testing/platform_test.h" | 9 #include "testing/platform_test.h" |
10 | 10 |
11 class CWButtonTest : public CocoaTest { | 11 class ConstrainedWindowButtonTest : public CocoaTest { |
12 public: | 12 public: |
13 CWButtonTest() { | 13 ConstrainedWindowButtonTest() { |
14 NSRect frame = NSMakeRect(0, 0, 50, 30); | 14 NSRect frame = NSMakeRect(0, 0, 50, 30); |
15 button_.reset([[CWButton alloc] initWithFrame:frame]); | 15 button_.reset([[ConstrainedWindowButton alloc] initWithFrame:frame]); |
16 [button_ setTitle:@"Abcdefg"]; | 16 [button_ setTitle:@"Abcdefg"]; |
17 [button_ sizeToFit]; | 17 [button_ sizeToFit]; |
18 [[test_window() contentView] addSubview:button_]; | 18 [[test_window() contentView] addSubview:button_]; |
19 } | 19 } |
20 | 20 |
21 protected: | 21 protected: |
22 scoped_nsobject<CWButton> button_; | 22 scoped_nsobject<ConstrainedWindowButton> button_; |
23 }; | 23 }; |
24 | 24 |
25 TEST_VIEW(CWButtonTest, button_) | 25 TEST_VIEW(ConstrainedWindowButtonTest, button_) |
26 | 26 |
27 // Test hover, mostly to ensure nothing leaks or crashes. | 27 // Test hover, mostly to ensure nothing leaks or crashes. |
28 TEST_F(CWButtonTest, DisplayWithHover) { | 28 TEST_F(ConstrainedWindowButtonTest, DisplayWithHover) { |
29 [[button_ cell] setIsMouseInside:NO]; | 29 [[button_ cell] setIsMouseInside:NO]; |
30 [button_ display]; | 30 [button_ display]; |
31 [[button_ cell] setIsMouseInside:YES]; | 31 [[button_ cell] setIsMouseInside:YES]; |
32 [button_ display]; | 32 [button_ display]; |
33 } | 33 } |
34 | 34 |
35 // Test disabled, mostly to ensure nothing leaks or crashes. | 35 // Test disabled, mostly to ensure nothing leaks or crashes. |
36 TEST_F(CWButtonTest, DisplayWithDisable) { | 36 TEST_F(ConstrainedWindowButtonTest, DisplayWithDisable) { |
37 [button_ setEnabled:YES]; | 37 [button_ setEnabled:YES]; |
38 [button_ display]; | 38 [button_ display]; |
39 [button_ setEnabled:NO]; | 39 [button_ setEnabled:NO]; |
40 [button_ display]; | 40 [button_ display]; |
41 } | 41 } |
42 | 42 |
43 // Test pushed, mostly to ensure nothing leaks or crashes. | 43 // Test pushed, mostly to ensure nothing leaks or crashes. |
44 TEST_F(CWButtonTest, DisplayWithPushed) { | 44 TEST_F(ConstrainedWindowButtonTest, DisplayWithPushed) { |
45 [[button_ cell] setHighlighted:NO]; | 45 [[button_ cell] setHighlighted:NO]; |
46 [button_ display]; | 46 [button_ display]; |
47 [[button_ cell] setHighlighted:YES]; | 47 [[button_ cell] setHighlighted:YES]; |
48 [button_ display]; | 48 [button_ display]; |
49 } | 49 } |
50 | 50 |
51 // Tracking rects | 51 // Tracking rects |
52 TEST_F(CWButtonTest, TrackingRects) { | 52 TEST_F(ConstrainedWindowButtonTest, TrackingRects) { |
53 CWButtonCell* cell = [button_ cell]; | 53 ConstrainedWindowButtonCell* cell = [button_ cell]; |
54 EXPECT_FALSE([cell isMouseInside]); | 54 EXPECT_FALSE([cell isMouseInside]); |
55 | 55 |
56 [button_ mouseEntered:nil]; | 56 [button_ mouseEntered:nil]; |
57 EXPECT_TRUE([cell isMouseInside]); | 57 EXPECT_TRUE([cell isMouseInside]); |
58 [button_ mouseExited:nil]; | 58 [button_ mouseExited:nil]; |
59 EXPECT_FALSE([cell isMouseInside]); | 59 EXPECT_FALSE([cell isMouseInside]); |
60 } | 60 } |
OLD | NEW |