OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #include "base/mac/scoped_nsobject.h" | 5 #include "base/mac/scoped_nsobject.h" |
6 #include "base/memory/scoped_ptr.h" | 6 #include "base/memory/scoped_ptr.h" |
7 #include "base/strings/string_util.h" | 7 #include "base/strings/string_util.h" |
8 #include "chrome/browser/chrome_notification_types.h" | 8 #include "chrome/browser/chrome_notification_types.h" |
9 #include "chrome/browser/fullscreen.h" | 9 #include "chrome/browser/fullscreen.h" |
10 #include "chrome/browser/ui/bookmarks/bookmark_utils.h" | 10 #include "chrome/browser/ui/bookmarks/bookmark_utils.h" |
11 #import "chrome/browser/ui/cocoa/browser_window_cocoa.h" | 11 #import "chrome/browser/ui/cocoa/browser_window_cocoa.h" |
12 #import "chrome/browser/ui/cocoa/browser_window_controller.h" | 12 #import "chrome/browser/ui/cocoa/browser_window_controller.h" |
13 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h" | 13 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h" |
14 #include "chrome/grit/generated_resources.h" | |
15 #include "chrome/test/base/testing_profile.h" | 14 #include "chrome/test/base/testing_profile.h" |
16 #include "content/public/browser/notification_details.h" | 15 #include "content/public/browser/notification_details.h" |
17 #include "testing/gtest/include/gtest/gtest.h" | 16 #include "testing/gtest/include/gtest/gtest.h" |
18 #import "third_party/ocmock/OCMock/OCMock.h" | 17 #import "third_party/ocmock/OCMock/OCMock.h" |
19 #import "third_party/ocmock/gtest_support.h" | 18 #import "third_party/ocmock/gtest_support.h" |
20 #include "ui/base/l10n/l10n_util_mac.h" | |
21 | 19 |
22 // Main test class. | 20 // Main test class. |
23 class BrowserWindowCocoaTest : public CocoaProfileTest { | 21 class BrowserWindowCocoaTest : public CocoaProfileTest { |
24 void SetUp() override { | 22 void SetUp() override { |
25 CocoaProfileTest::SetUp(); | 23 CocoaProfileTest::SetUp(); |
26 ASSERT_TRUE(browser()); | 24 ASSERT_TRUE(browser()); |
27 | 25 |
28 controller_ = [[BrowserWindowController alloc] initWithBrowser:browser() | 26 controller_ = [[BrowserWindowController alloc] initWithBrowser:browser() |
29 takeOwnership:NO]; | 27 takeOwnership:NO]; |
30 } | 28 } |
(...skipping 12 matching lines...) Expand all Loading... |
43 new BrowserWindowCocoa(browser(), controller_)); | 41 new BrowserWindowCocoa(browser(), controller_)); |
44 | 42 |
45 bool before = bwc->IsBookmarkBarVisible(); | 43 bool before = bwc->IsBookmarkBarVisible(); |
46 chrome::ToggleBookmarkBarWhenVisible(profile()); | 44 chrome::ToggleBookmarkBarWhenVisible(profile()); |
47 EXPECT_NE(before, bwc->IsBookmarkBarVisible()); | 45 EXPECT_NE(before, bwc->IsBookmarkBarVisible()); |
48 | 46 |
49 chrome::ToggleBookmarkBarWhenVisible(profile()); | 47 chrome::ToggleBookmarkBarWhenVisible(profile()); |
50 EXPECT_EQ(before, bwc->IsBookmarkBarVisible()); | 48 EXPECT_EQ(before, bwc->IsBookmarkBarVisible()); |
51 } | 49 } |
52 | 50 |
53 TEST_F(BrowserWindowCocoaTest, TestWindowTitle) { | |
54 scoped_ptr<BrowserWindowCocoa> bwc( | |
55 new BrowserWindowCocoa(browser(), controller_)); | |
56 NSString* playing_emoji = | |
57 l10n_util::GetNSStringF(IDS_WINDOW_AUDIO_PLAYING_MAC, base::string16()); | |
58 NSString* muting_emoji = | |
59 l10n_util::GetNSStringF(IDS_WINDOW_AUDIO_MUTING_MAC, base::string16()); | |
60 EXPECT_EQ([bwc->WindowTitle() rangeOfString:playing_emoji].location, | |
61 NSNotFound); | |
62 EXPECT_EQ([bwc->WindowTitle() rangeOfString:muting_emoji].location, | |
63 NSNotFound); | |
64 bwc->UpdateMediaState(TAB_MEDIA_STATE_AUDIO_PLAYING); | |
65 EXPECT_NE([bwc->WindowTitle() rangeOfString:playing_emoji].location, | |
66 NSNotFound); | |
67 bwc->UpdateMediaState(TAB_MEDIA_STATE_AUDIO_MUTING); | |
68 EXPECT_NE([bwc->WindowTitle() rangeOfString:muting_emoji].location, | |
69 NSNotFound); | |
70 bwc->UpdateMediaState(TAB_MEDIA_STATE_NONE); | |
71 EXPECT_EQ([bwc->WindowTitle() rangeOfString:playing_emoji].location, | |
72 NSNotFound); | |
73 EXPECT_EQ([bwc->WindowTitle() rangeOfString:muting_emoji].location, | |
74 NSNotFound); | |
75 } | |
76 | |
77 // Test that IsMaximized() returns false when the browser window goes from | 51 // Test that IsMaximized() returns false when the browser window goes from |
78 // maximized to minimized state - http://crbug/452976. | 52 // maximized to minimized state - http://crbug/452976. |
79 TEST_F(BrowserWindowCocoaTest, TestMinimizeState) { | 53 TEST_F(BrowserWindowCocoaTest, TestMinimizeState) { |
80 scoped_ptr<BrowserWindowCocoa> bwc( | 54 scoped_ptr<BrowserWindowCocoa> bwc( |
81 new BrowserWindowCocoa(browser(), controller_)); | 55 new BrowserWindowCocoa(browser(), controller_)); |
82 | 56 |
83 EXPECT_FALSE(bwc->IsMinimized()); | 57 EXPECT_FALSE(bwc->IsMinimized()); |
84 bwc->Maximize(); | 58 bwc->Maximize(); |
85 EXPECT_TRUE(bwc->IsMaximized()); | 59 EXPECT_TRUE(bwc->IsMaximized()); |
86 EXPECT_FALSE(bwc->IsMinimized()); | 60 EXPECT_FALSE(bwc->IsMinimized()); |
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
204 [[[window_ stub] andReturn:nil] delegate]; | 178 [[[window_ stub] andReturn:nil] delegate]; |
205 [[[controller_ stub] andReturn:window_] window]; | 179 [[[controller_ stub] andReturn:window_] window]; |
206 [[window_ expect] orderOut:nil]; | 180 [[window_ expect] orderOut:nil]; |
207 [[window_ expect] close]; | 181 [[window_ expect] close]; |
208 CreateAndCloseBrowserWindow(); | 182 CreateAndCloseBrowserWindow(); |
209 EXPECT_OCMOCK_VERIFY(controller_); | 183 EXPECT_OCMOCK_VERIFY(controller_); |
210 EXPECT_OCMOCK_VERIFY(window_); | 184 EXPECT_OCMOCK_VERIFY(window_); |
211 } | 185 } |
212 | 186 |
213 // TODO(???): test other methods of BrowserWindowCocoa | 187 // TODO(???): test other methods of BrowserWindowCocoa |
OLD | NEW |