OLD | NEW |
(Empty) | |
| 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 |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #import <Cocoa/Cocoa.h> |
| 6 |
| 7 #include "base/mac/scoped_nsobject.h" |
| 8 #import "chrome/browser/ui/cocoa/browser_window_layout.h" |
| 9 #include "testing/gtest/include/gtest/gtest.h" |
| 10 |
| 11 class BrowserWindowLayoutTest : public testing::Test { |
| 12 public: |
| 13 BrowserWindowLayoutTest() {} |
| 14 virtual void SetUp() OVERRIDE { |
| 15 layout.reset([[BrowserWindowLayout alloc] init]); |
| 16 |
| 17 [layout setContentViewSize:NSMakeSize(600, 600)]; |
| 18 [layout setWindowSize:NSMakeSize(600, 622)]; |
| 19 [layout setInAnyFullscreen:NO]; |
| 20 [layout setHasTabStrip:YES]; |
| 21 [layout setHasToolbar:YES]; |
| 22 [layout setToolbarHeight:32]; |
| 23 [layout setPlaceBookmarkBarBelowInfoBar:NO]; |
| 24 [layout setBookmarkBarHidden:NO]; |
| 25 [layout setBookmarkBarHeight:26]; |
| 26 [layout setInfoBarHeight:72]; |
| 27 [layout setInfoBarMaxTopArrowHeight:13]; |
| 28 [layout setHasDownloadShelf:YES]; |
| 29 [layout setDownloadShelfHeight:44]; |
| 30 } |
| 31 |
| 32 base::scoped_nsobject<BrowserWindowLayout> layout; |
| 33 |
| 34 private: |
| 35 DISALLOW_COPY_AND_ASSIGN(BrowserWindowLayoutTest); |
| 36 }; |
| 37 |
| 38 TEST_F(BrowserWindowLayoutTest, TestAllViews) { |
| 39 mac_browser::LayoutOutput output = [layout computeLayout]; |
| 40 |
| 41 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 585, 600, 37), output.tabStripFrame)); |
| 42 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 553, 600, 32), output.toolbarFrame)); |
| 43 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 527, 600, 26), output.bookmarkFrame)); |
| 44 EXPECT_TRUE(NSEqualRects(NSZeroRect, output.fullscreenBackingBarFrame)); |
| 45 EXPECT_EQ(527, output.findBarMaxY); |
| 46 EXPECT_EQ(527, output.fullscreenExitButtonMaxY); |
| 47 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 455, 600, 85), output.infoBarFrame)); |
| 48 EXPECT_TRUE( |
| 49 NSEqualRects(NSMakeRect(0, 0, 600, 44), output.downloadShelfFrame)); |
| 50 EXPECT_TRUE( |
| 51 NSEqualRects(NSMakeRect(0, 44, 600, 411), output.contentAreaFrame)); |
| 52 } |
| 53 |
| 54 TEST_F(BrowserWindowLayoutTest, TestAllViewsFullscreen) { |
| 55 // Content view has same size as window in AppKit Fullscreen. |
| 56 [layout setContentViewSize:NSMakeSize(600, 622)]; |
| 57 [layout setInAnyFullscreen:YES]; |
| 58 [layout setFullscreenSlidingStyle:fullscreen_mac::OMNIBOX_TABS_PRESENT]; |
| 59 [layout setFullscreenMenubarOffset:0]; |
| 60 [layout setFullscreenToolbarFraction:0]; |
| 61 |
| 62 mac_browser::LayoutOutput output = [layout computeLayout]; |
| 63 |
| 64 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 585, 600, 37), output.tabStripFrame)); |
| 65 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 553, 600, 32), output.toolbarFrame)); |
| 66 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 527, 600, 26), output.bookmarkFrame)); |
| 67 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 527, 600, 95), |
| 68 output.fullscreenBackingBarFrame)); |
| 69 EXPECT_EQ(527, output.findBarMaxY); |
| 70 EXPECT_EQ(527, output.fullscreenExitButtonMaxY); |
| 71 EXPECT_TRUE(NSEqualRects(NSMakeRect(0, 455, 600, 85), output.infoBarFrame)); |
| 72 EXPECT_TRUE( |
| 73 NSEqualRects(NSMakeRect(0, 0, 600, 44), output.downloadShelfFrame)); |
| 74 EXPECT_TRUE( |
| 75 NSEqualRects(NSMakeRect(0, 44, 600, 411), output.contentAreaFrame)); |
| 76 } |
OLD | NEW |