| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #include "base/mac/scoped_nsobject.h" | 7 #include "base/mac/scoped_nsobject.h" |
| 8 #import "chrome/browser/ui/cocoa/browser_window_layout.h" | 8 #import "chrome/browser/ui/cocoa/browser_window_layout.h" |
| 9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
| 10 | 10 |
| 11 class BrowserWindowLayoutTest : public testing::Test { | 11 class BrowserWindowLayoutTest : public testing::Test { |
| 12 public: | 12 public: |
| 13 BrowserWindowLayoutTest() {} | 13 BrowserWindowLayoutTest() {} |
| 14 virtual void SetUp() OVERRIDE { | 14 virtual void SetUp() OVERRIDE { |
| 15 layout.reset([[BrowserWindowLayout alloc] init]); | 15 layout.reset([[BrowserWindowLayout alloc] init]); |
| 16 | 16 |
| 17 [layout setContentViewSize:NSMakeSize(600, 600)]; | 17 [layout setContentViewSize:NSMakeSize(600, 600)]; |
| 18 [layout setWindowSize:NSMakeSize(600, 622)]; | 18 [layout setWindowSize:NSMakeSize(600, 622)]; |
| 19 [layout setInAnyFullscreen:NO]; | 19 [layout setInAnyFullscreen:NO]; |
| 20 [layout setHasTabStrip:YES]; | 20 [layout setHasTabStrip:YES]; |
| 21 [layout setFullscreenButtonFrame:NSMakeRect(575, 596, 16, 17)]; |
| 22 [layout setShouldShowAvatar:YES]; |
| 23 [layout setShouldUseNewAvatar:YES]; |
| 24 [layout setAvatarSize:NSMakeSize(63, 27)]; |
| 25 [layout setAvatarLineWidth:1]; |
| 21 [layout setHasToolbar:YES]; | 26 [layout setHasToolbar:YES]; |
| 22 [layout setToolbarHeight:32]; | 27 [layout setToolbarHeight:32]; |
| 23 [layout setPlaceBookmarkBarBelowInfoBar:NO]; | 28 [layout setPlaceBookmarkBarBelowInfoBar:NO]; |
| 24 [layout setBookmarkBarHidden:NO]; | 29 [layout setBookmarkBarHidden:NO]; |
| 25 [layout setBookmarkBarHeight:26]; | 30 [layout setBookmarkBarHeight:26]; |
| 26 [layout setInfoBarHeight:72]; | 31 [layout setInfoBarHeight:72]; |
| 27 [layout setPageInfoBubblePointY:13]; | 32 [layout setPageInfoBubblePointY:13]; |
| 28 [layout setHasDownloadShelf:YES]; | 33 [layout setHasDownloadShelf:YES]; |
| 29 [layout setDownloadShelfHeight:44]; | 34 [layout setDownloadShelfHeight:44]; |
| 30 } | 35 } |
| 31 | 36 |
| 32 base::scoped_nsobject<BrowserWindowLayout> layout; | 37 base::scoped_nsobject<BrowserWindowLayout> layout; |
| 33 | 38 |
| 34 private: | 39 private: |
| 35 DISALLOW_COPY_AND_ASSIGN(BrowserWindowLayoutTest); | 40 DISALLOW_COPY_AND_ASSIGN(BrowserWindowLayoutTest); |
| 36 }; | 41 }; |
| 37 | 42 |
| 38 TEST_F(BrowserWindowLayoutTest, TestAllViews) { | 43 TEST_F(BrowserWindowLayoutTest, TestAllViews) { |
| 39 chrome::LayoutOutput output = [layout computeLayout]; | 44 chrome::LayoutOutput output = [layout computeLayout]; |
| 40 | 45 |
| 41 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 585, 600, 37), output.tabStripFrame)); | 46 EXPECT_TRUE( |
| 47 NSEqualRects(NSMakeRect(0, 585, 600, 37), output.tabStripLayout.frame)); |
| 48 EXPECT_TRUE(NSEqualRects(NSMakeRect(508, 590, 63, 27), |
| 49 output.tabStripLayout.avatarFrame)); |
| 50 EXPECT_EQ(70, output.tabStripLayout.leftIndent); |
| 51 EXPECT_EQ(92, output.tabStripLayout.rightIndent); |
| 42 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 553, 600, 32), output.toolbarFrame)); | 52 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 553, 600, 32), output.toolbarFrame)); |
| 43 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 527, 600, 26), output.bookmarkFrame)); | 53 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 527, 600, 26), output.bookmarkFrame)); |
| 44 EXPECT_TRUE(NSEqualRects(NSZeroRect, output.fullscreenBackingBarFrame)); | 54 EXPECT_TRUE(NSEqualRects(NSZeroRect, output.fullscreenBackingBarFrame)); |
| 45 EXPECT_EQ(527, output.findBarMaxY); | 55 EXPECT_EQ(527, output.findBarMaxY); |
| 46 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 455, 600, 111), output.infoBarFrame)); | 56 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 455, 600, 111), output.infoBarFrame)); |
| 47 EXPECT_TRUE( | 57 EXPECT_TRUE( |
| 48 NSEqualRects(NSMakeRect(0, 0, 600, 44), output.downloadShelfFrame)); | 58 NSEqualRects(NSMakeRect(0, 0, 600, 44), output.downloadShelfFrame)); |
| 49 EXPECT_TRUE( | 59 EXPECT_TRUE( |
| 50 NSEqualRects(NSMakeRect(0, 44, 600, 411), output.contentAreaFrame)); | 60 NSEqualRects(NSMakeRect(0, 44, 600, 411), output.contentAreaFrame)); |
| 51 } | 61 } |
| 52 | 62 |
| 53 TEST_F(BrowserWindowLayoutTest, TestAllViewsFullscreen) { | 63 TEST_F(BrowserWindowLayoutTest, TestAllViewsFullscreen) { |
| 54 // Content view has same size as window in AppKit Fullscreen. | 64 // Content view has same size as window in AppKit Fullscreen. |
| 55 [layout setContentViewSize:NSMakeSize(600, 622)]; | 65 [layout setContentViewSize:NSMakeSize(600, 622)]; |
| 56 [layout setInAnyFullscreen:YES]; | 66 [layout setInAnyFullscreen:YES]; |
| 57 [layout setFullscreenSlidingStyle:fullscreen_mac::OMNIBOX_TABS_PRESENT]; | 67 [layout setFullscreenSlidingStyle:fullscreen_mac::OMNIBOX_TABS_PRESENT]; |
| 58 [layout setFullscreenMenubarOffset:0]; | 68 [layout setFullscreenMenubarOffset:0]; |
| 59 [layout setFullscreenToolbarFraction:0]; | 69 [layout setFullscreenToolbarFraction:0]; |
| 70 [layout setFullscreenButtonFrame:NSZeroRect]; |
| 60 | 71 |
| 61 chrome::LayoutOutput output = [layout computeLayout]; | 72 chrome::LayoutOutput output = [layout computeLayout]; |
| 62 | 73 |
| 63 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 585, 600, 37), output.tabStripFrame)); | 74 EXPECT_TRUE( |
| 75 NSEqualRects(NSMakeRect(0, 585, 600, 37), output.tabStripLayout.frame)); |
| 76 EXPECT_TRUE(NSEqualRects(NSMakeRect(533, 590, 63, 27), |
| 77 output.tabStripLayout.avatarFrame)); |
| 78 EXPECT_EQ(0, output.tabStripLayout.leftIndent); |
| 79 EXPECT_EQ(67, output.tabStripLayout.rightIndent); |
| 64 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 553, 600, 32), output.toolbarFrame)); | 80 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 553, 600, 32), output.toolbarFrame)); |
| 65 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 527, 600, 26), output.bookmarkFrame)); | 81 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 527, 600, 26), output.bookmarkFrame)); |
| 66 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 527, 600, 95), | 82 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 527, 600, 95), |
| 67 output.fullscreenBackingBarFrame)); | 83 output.fullscreenBackingBarFrame)); |
| 68 EXPECT_EQ(527, output.findBarMaxY); | 84 EXPECT_EQ(527, output.findBarMaxY); |
| 69 EXPECT_EQ(527, output.fullscreenExitButtonMaxY); | 85 EXPECT_EQ(527, output.fullscreenExitButtonMaxY); |
| 70 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 455, 600, 111), output.infoBarFrame)); | 86 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 455, 600, 111), output.infoBarFrame)); |
| 71 EXPECT_TRUE( | 87 EXPECT_TRUE( |
| 72 NSEqualRects(NSMakeRect(0, 0, 600, 44), output.downloadShelfFrame)); | 88 NSEqualRects(NSMakeRect(0, 0, 600, 44), output.downloadShelfFrame)); |
| 73 EXPECT_TRUE( | 89 EXPECT_TRUE( |
| 74 NSEqualRects(NSMakeRect(0, 44, 600, 411), output.contentAreaFrame)); | 90 NSEqualRects(NSMakeRect(0, 44, 600, 411), output.contentAreaFrame)); |
| 75 } | 91 } |
| 76 | 92 |
| 77 TEST_F(BrowserWindowLayoutTest, TestPopupWindow) { | 93 TEST_F(BrowserWindowLayoutTest, TestPopupWindow) { |
| 78 [layout setHasTabStrip:NO]; | 94 [layout setHasTabStrip:NO]; |
| 79 [layout setHasToolbar:NO]; | 95 [layout setHasToolbar:NO]; |
| 80 [layout setHasLocationBar:YES]; | 96 [layout setHasLocationBar:YES]; |
| 81 [layout setBookmarkBarHidden:YES]; | 97 [layout setBookmarkBarHidden:YES]; |
| 82 [layout setHasDownloadShelf:NO]; | 98 [layout setHasDownloadShelf:NO]; |
| 83 | 99 |
| 84 chrome::LayoutOutput output = [layout computeLayout]; | 100 chrome::LayoutOutput output = [layout computeLayout]; |
| 85 | 101 |
| 86 EXPECT_TRUE(NSEqualRects(NSZeroRect, output.tabStripFrame)); | 102 EXPECT_TRUE(NSEqualRects(NSZeroRect, output.tabStripLayout.frame)); |
| 103 EXPECT_TRUE(NSEqualRects(NSZeroRect, output.tabStripLayout.avatarFrame)); |
| 104 EXPECT_EQ(0, output.tabStripLayout.leftIndent); |
| 105 EXPECT_EQ(0, output.tabStripLayout.rightIndent); |
| 87 EXPECT_TRUE(NSEqualRects(NSMakeRect(1, 568, 598, 32), output.toolbarFrame)); | 106 EXPECT_TRUE(NSEqualRects(NSMakeRect(1, 568, 598, 32), output.toolbarFrame)); |
| 88 EXPECT_TRUE(NSEqualRects(NSZeroRect, output.bookmarkFrame)); | 107 EXPECT_TRUE(NSEqualRects(NSZeroRect, output.bookmarkFrame)); |
| 89 EXPECT_TRUE(NSEqualRects(NSZeroRect, output.fullscreenBackingBarFrame)); | 108 EXPECT_TRUE(NSEqualRects(NSZeroRect, output.fullscreenBackingBarFrame)); |
| 90 EXPECT_EQ(567, output.findBarMaxY); | 109 EXPECT_EQ(567, output.findBarMaxY); |
| 91 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 495, 600, 86), output.infoBarFrame)); | 110 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 495, 600, 86), output.infoBarFrame)); |
| 92 EXPECT_TRUE(NSEqualRects(NSZeroRect, output.downloadShelfFrame)); | 111 EXPECT_TRUE(NSEqualRects(NSZeroRect, output.downloadShelfFrame)); |
| 93 EXPECT_TRUE( | 112 EXPECT_TRUE( |
| 94 NSEqualRects(NSMakeRect(0, 0, 600, 495), output.contentAreaFrame)); | 113 NSEqualRects(NSMakeRect(0, 0, 600, 495), output.contentAreaFrame)); |
| 95 } | 114 } |
| OLD | NEW |