| 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 "chrome/browser/ui/cocoa/website_settings/permission_bubble_controller.h
" | 5 #import "chrome/browser/ui/cocoa/website_settings/permission_bubble_controller.h
" |
| 6 | 6 |
| 7 #include <Carbon/Carbon.h> | 7 #include <Carbon/Carbon.h> |
| 8 | 8 |
| 9 #include "base/mac/foundation_util.h" | 9 #include "base/mac/foundation_util.h" |
| 10 #include "base/mac/sdk_forward_declarations.h" | 10 #include "base/mac/sdk_forward_declarations.h" |
| 11 #include "base/stl_util.h" | 11 #include "base/stl_util.h" |
| 12 #include "base/strings/sys_string_conversions.h" | 12 #include "base/strings/sys_string_conversions.h" |
| 13 #include "base/strings/utf_string_conversions.h" | 13 #include "base/strings/utf_string_conversions.h" |
| 14 #import "chrome/browser/ui/cocoa/cocoa_profile_test.h" | 14 #import "chrome/browser/ui/cocoa/cocoa_profile_test.h" |
| 15 #include "chrome/browser/ui/cocoa/run_loop_testing.h" | 15 #include "chrome/browser/ui/cocoa/run_loop_testing.h" |
| 16 #import "chrome/browser/ui/cocoa/website_settings/permission_bubble_cocoa.h" | 16 #import "chrome/browser/ui/cocoa/website_settings/permission_bubble_cocoa.h" |
| 17 #import "chrome/browser/ui/cocoa/website_settings/split_block_button.h" | 17 #import "chrome/browser/ui/cocoa/website_settings/split_block_button.h" |
| 18 #include "chrome/browser/ui/website_settings/mock_permission_bubble_request.h" | 18 #include "chrome/browser/ui/website_settings/mock_permission_bubble_request.h" |
| 19 #include "chrome/grit/generated_resources.h" | 19 #include "chrome/grit/generated_resources.h" |
| 20 #include "testing/gmock/include/gmock/gmock.h" | 20 #include "testing/gmock/include/gmock/gmock.h" |
| 21 #include "ui/base/l10n/l10n_util.h" | 21 #include "ui/base/l10n/l10n_util.h" |
| 22 #include "ui/base/l10n/l10n_util_mac.h" | 22 #include "ui/base/l10n/l10n_util_mac.h" |
| 23 #import "ui/events/test/cocoa_test_event_utils.h" | 23 #import "ui/events/test/cocoa_test_event_utils.h" |
| 24 | 24 |
| 25 // TODO(hcarmona): compile this |
| 26 |
| 25 @class ConstrainedWindowButton; | 27 @class ConstrainedWindowButton; |
| 26 | 28 |
| 27 @interface PermissionBubbleController (ExposedForTesting) | 29 @interface PermissionBubbleController (ExposedForTesting) |
| 28 - (void)ok:(id)sender; | 30 - (void)ok:(id)sender; |
| 29 - (void)onAllow:(id)sender; | 31 - (void)onAllow:(id)sender; |
| 30 - (void)onBlock:(id)sender; | 32 - (void)onBlock:(id)sender; |
| 31 - (void)onCustomize:(id)sender; | 33 - (void)onCustomize:(id)sender; |
| 32 - (void)onCheckboxChanged:(id)sender; | 34 - (void)onCheckboxChanged:(id)sender; |
| 33 @end | 35 @end |
| 34 | 36 |
| (...skipping 15 matching lines...) Expand all Loading... |
| 50 MOCK_METHOD0(SetCustomizationMode, void()); | 52 MOCK_METHOD0(SetCustomizationMode, void()); |
| 51 MOCK_METHOD0(Accept, void()); | 53 MOCK_METHOD0(Accept, void()); |
| 52 MOCK_METHOD0(Deny, void()); | 54 MOCK_METHOD0(Deny, void()); |
| 53 MOCK_METHOD0(Closing, void()); | 55 MOCK_METHOD0(Closing, void()); |
| 54 MOCK_METHOD1(SetView, void(PermissionBubbleView*)); | 56 MOCK_METHOD1(SetView, void(PermissionBubbleView*)); |
| 55 | 57 |
| 56 void SetUp() override { | 58 void SetUp() override { |
| 57 CocoaProfileTest::SetUp(); | 59 CocoaProfileTest::SetUp(); |
| 58 bridge_.reset(new PermissionBubbleCocoa(browser())); | 60 bridge_.reset(new PermissionBubbleCocoa(browser())); |
| 59 AddRequest(kPermissionA); | 61 AddRequest(kPermissionA); |
| 60 controller_ = [[PermissionBubbleController alloc] | 62 controller_ = |
| 61 initWithParentWindow:test_window() | 63 [[PermissionBubbleController alloc] initWithBrowser:browser() |
| 62 bridge:bridge_.get()]; | 64 bridge:bridge_.get()]; |
| 63 } | 65 } |
| 64 | 66 |
| 65 void TearDown() override { | 67 void TearDown() override { |
| 66 [controller_ close]; | 68 [controller_ close]; |
| 67 chrome::testing::NSRunLoopRunAllPending(); | 69 chrome::testing::NSRunLoopRunAllPending(); |
| 68 STLDeleteElements(&requests_); | 70 STLDeleteElements(&requests_); |
| 69 CocoaProfileTest::TearDown(); | 71 CocoaProfileTest::TearDown(); |
| 70 } | 72 } |
| 71 | 73 |
| 72 void AddRequest(const std::string& title) { | 74 void AddRequest(const std::string& title) { |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 139 std::vector<bool> accept_states_; | 141 std::vector<bool> accept_states_; |
| 140 }; | 142 }; |
| 141 | 143 |
| 142 TEST_F(PermissionBubbleControllerTest, ShowAndClose) { | 144 TEST_F(PermissionBubbleControllerTest, ShowAndClose) { |
| 143 EXPECT_FALSE([[controller_ window] isVisible]); | 145 EXPECT_FALSE([[controller_ window] isVisible]); |
| 144 [controller_ showWindow:nil]; | 146 [controller_ showWindow:nil]; |
| 145 EXPECT_TRUE([[controller_ window] isVisible]); | 147 EXPECT_TRUE([[controller_ window] isVisible]); |
| 146 } | 148 } |
| 147 | 149 |
| 148 TEST_F(PermissionBubbleControllerTest, ShowSinglePermission) { | 150 TEST_F(PermissionBubbleControllerTest, ShowSinglePermission) { |
| 149 [controller_ showAtAnchor:NSZeroPoint | 151 [controller_ showWithDelegate:this |
| 150 withDelegate:this | 152 forRequests:requests_ |
| 151 forRequests:requests_ | 153 acceptStates:accept_states_]; |
| 152 acceptStates:accept_states_]; | |
| 153 | 154 |
| 154 EXPECT_TRUE(FindTextFieldWithString(kPermissionA)); | 155 EXPECT_TRUE(FindTextFieldWithString(kPermissionA)); |
| 155 EXPECT_TRUE(FindButtonWithTitle(IDS_PERMISSION_ALLOW)); | 156 EXPECT_TRUE(FindButtonWithTitle(IDS_PERMISSION_ALLOW)); |
| 156 EXPECT_TRUE(FindButtonWithTitle(IDS_PERMISSION_DENY)); | 157 EXPECT_TRUE(FindButtonWithTitle(IDS_PERMISSION_DENY)); |
| 157 EXPECT_FALSE(FindButtonWithTitle(IDS_OK)); | 158 EXPECT_FALSE(FindButtonWithTitle(IDS_OK)); |
| 158 } | 159 } |
| 159 | 160 |
| 160 TEST_F(PermissionBubbleControllerTest, ShowMultiplePermissions) { | 161 TEST_F(PermissionBubbleControllerTest, ShowMultiplePermissions) { |
| 161 AddRequest(kPermissionB); | 162 AddRequest(kPermissionB); |
| 162 AddRequest(kPermissionC); | 163 AddRequest(kPermissionC); |
| 163 | 164 |
| 164 accept_states_.push_back(true); // A | 165 accept_states_.push_back(true); // A |
| 165 accept_states_.push_back(true); // B | 166 accept_states_.push_back(true); // B |
| 166 accept_states_.push_back(true); // C | 167 accept_states_.push_back(true); // C |
| 167 | 168 |
| 168 [controller_ showAtAnchor:NSZeroPoint | 169 [controller_ showWithDelegate:this |
| 169 withDelegate:this | 170 forRequests:requests_ |
| 170 forRequests:requests_ | 171 acceptStates:accept_states_]; |
| 171 acceptStates:accept_states_]; | |
| 172 | 172 |
| 173 EXPECT_TRUE(FindTextFieldWithString(kPermissionA)); | 173 EXPECT_TRUE(FindTextFieldWithString(kPermissionA)); |
| 174 EXPECT_TRUE(FindTextFieldWithString(kPermissionB)); | 174 EXPECT_TRUE(FindTextFieldWithString(kPermissionB)); |
| 175 EXPECT_TRUE(FindTextFieldWithString(kPermissionC)); | 175 EXPECT_TRUE(FindTextFieldWithString(kPermissionC)); |
| 176 | 176 |
| 177 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_ALLOW)); | 177 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_ALLOW)); |
| 178 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_DENY)); | 178 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_DENY)); |
| 179 EXPECT_TRUE(FindButtonWithTitle(IDS_OK)); | 179 EXPECT_TRUE(FindButtonWithTitle(IDS_OK)); |
| 180 } | 180 } |
| 181 | 181 |
| 182 TEST_F(PermissionBubbleControllerTest, ShowMultiplePermissionsAllow) { | 182 TEST_F(PermissionBubbleControllerTest, ShowMultiplePermissionsAllow) { |
| 183 AddRequest(kPermissionB); | 183 AddRequest(kPermissionB); |
| 184 | 184 |
| 185 accept_states_.push_back(true); // A | 185 accept_states_.push_back(true); // A |
| 186 accept_states_.push_back(true); // B | 186 accept_states_.push_back(true); // B |
| 187 | 187 |
| 188 [controller_ showAtAnchor:NSZeroPoint | 188 [controller_ showWithDelegate:this |
| 189 withDelegate:this | 189 forRequests:requests_ |
| 190 forRequests:requests_ | 190 acceptStates:accept_states_]; |
| 191 acceptStates:accept_states_]; | |
| 192 | 191 |
| 193 // Test that all menus have 'Allow' visible. | 192 // Test that all menus have 'Allow' visible. |
| 194 EXPECT_TRUE(FindMenuButtonWithTitle(IDS_PERMISSION_ALLOW)); | 193 EXPECT_TRUE(FindMenuButtonWithTitle(IDS_PERMISSION_ALLOW)); |
| 195 EXPECT_FALSE(FindMenuButtonWithTitle(IDS_PERMISSION_DENY)); | 194 EXPECT_FALSE(FindMenuButtonWithTitle(IDS_PERMISSION_DENY)); |
| 196 | 195 |
| 197 EXPECT_TRUE(FindButtonWithTitle(IDS_OK)); | 196 EXPECT_TRUE(FindButtonWithTitle(IDS_OK)); |
| 198 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_ALLOW)); | 197 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_ALLOW)); |
| 199 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_DENY)); | 198 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_DENY)); |
| 200 } | 199 } |
| 201 | 200 |
| 202 TEST_F(PermissionBubbleControllerTest, ShowMultiplePermissionsBlock) { | 201 TEST_F(PermissionBubbleControllerTest, ShowMultiplePermissionsBlock) { |
| 203 AddRequest(kPermissionB); | 202 AddRequest(kPermissionB); |
| 204 | 203 |
| 205 accept_states_.push_back(false); // A | 204 accept_states_.push_back(false); // A |
| 206 accept_states_.push_back(false); // B | 205 accept_states_.push_back(false); // B |
| 207 | 206 |
| 208 [controller_ showAtAnchor:NSZeroPoint | 207 [controller_ showWithDelegate:this |
| 209 withDelegate:this | 208 forRequests:requests_ |
| 210 forRequests:requests_ | 209 acceptStates:accept_states_]; |
| 211 acceptStates:accept_states_]; | |
| 212 | 210 |
| 213 // Test that all menus have 'Block' visible. | 211 // Test that all menus have 'Block' visible. |
| 214 EXPECT_TRUE(FindMenuButtonWithTitle(IDS_PERMISSION_DENY)); | 212 EXPECT_TRUE(FindMenuButtonWithTitle(IDS_PERMISSION_DENY)); |
| 215 EXPECT_FALSE(FindMenuButtonWithTitle(IDS_PERMISSION_ALLOW)); | 213 EXPECT_FALSE(FindMenuButtonWithTitle(IDS_PERMISSION_ALLOW)); |
| 216 | 214 |
| 217 EXPECT_TRUE(FindButtonWithTitle(IDS_OK)); | 215 EXPECT_TRUE(FindButtonWithTitle(IDS_OK)); |
| 218 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_ALLOW)); | 216 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_ALLOW)); |
| 219 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_DENY)); | 217 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_DENY)); |
| 220 } | 218 } |
| 221 | 219 |
| 222 TEST_F(PermissionBubbleControllerTest, ShowMultiplePermissionsMixed) { | 220 TEST_F(PermissionBubbleControllerTest, ShowMultiplePermissionsMixed) { |
| 223 AddRequest(kPermissionB); | 221 AddRequest(kPermissionB); |
| 224 AddRequest(kPermissionC); | 222 AddRequest(kPermissionC); |
| 225 | 223 |
| 226 accept_states_.push_back(false); // A | 224 accept_states_.push_back(false); // A |
| 227 accept_states_.push_back(false); // B | 225 accept_states_.push_back(false); // B |
| 228 accept_states_.push_back(true); // C | 226 accept_states_.push_back(true); // C |
| 229 | 227 |
| 230 [controller_ showAtAnchor:NSZeroPoint | 228 [controller_ showWithDelegate:this |
| 231 withDelegate:this | 229 forRequests:requests_ |
| 232 forRequests:requests_ | 230 acceptStates:accept_states_]; |
| 233 acceptStates:accept_states_]; | |
| 234 | 231 |
| 235 // Test that both 'allow' and 'deny' are visible. | 232 // Test that both 'allow' and 'deny' are visible. |
| 236 EXPECT_TRUE(FindMenuButtonWithTitle(IDS_PERMISSION_DENY)); | 233 EXPECT_TRUE(FindMenuButtonWithTitle(IDS_PERMISSION_DENY)); |
| 237 EXPECT_TRUE(FindMenuButtonWithTitle(IDS_PERMISSION_ALLOW)); | 234 EXPECT_TRUE(FindMenuButtonWithTitle(IDS_PERMISSION_ALLOW)); |
| 238 | 235 |
| 239 EXPECT_TRUE(FindButtonWithTitle(IDS_OK)); | 236 EXPECT_TRUE(FindButtonWithTitle(IDS_OK)); |
| 240 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_ALLOW)); | 237 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_ALLOW)); |
| 241 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_DENY)); | 238 EXPECT_FALSE(FindButtonWithTitle(IDS_PERMISSION_DENY)); |
| 242 } | 239 } |
| 243 | 240 |
| 244 TEST_F(PermissionBubbleControllerTest, OK) { | 241 TEST_F(PermissionBubbleControllerTest, OK) { |
| 245 AddRequest(kPermissionB); | 242 AddRequest(kPermissionB); |
| 246 | 243 |
| 247 accept_states_.push_back(true); // A | 244 accept_states_.push_back(true); // A |
| 248 accept_states_.push_back(true); // B | 245 accept_states_.push_back(true); // B |
| 249 | 246 |
| 250 [controller_ showAtAnchor:NSZeroPoint | 247 [controller_ showWithDelegate:this |
| 251 withDelegate:this | 248 forRequests:requests_ |
| 252 forRequests:requests_ | 249 acceptStates:accept_states_]; |
| 253 acceptStates:accept_states_]; | |
| 254 | 250 |
| 255 EXPECT_CALL(*this, Accept()).Times(1); | 251 EXPECT_CALL(*this, Accept()).Times(1); |
| 256 [FindButtonWithTitle(IDS_OK) performClick:nil]; | 252 [FindButtonWithTitle(IDS_OK) performClick:nil]; |
| 257 } | 253 } |
| 258 | 254 |
| 259 TEST_F(PermissionBubbleControllerTest, Allow) { | 255 TEST_F(PermissionBubbleControllerTest, Allow) { |
| 260 [controller_ showAtAnchor:NSZeroPoint | 256 [controller_ showWithDelegate:this |
| 261 withDelegate:this | 257 forRequests:requests_ |
| 262 forRequests:requests_ | 258 acceptStates:accept_states_]; |
| 263 acceptStates:accept_states_]; | |
| 264 | 259 |
| 265 EXPECT_CALL(*this, Accept()).Times(1); | 260 EXPECT_CALL(*this, Accept()).Times(1); |
| 266 [FindButtonWithTitle(IDS_PERMISSION_ALLOW) performClick:nil]; | 261 [FindButtonWithTitle(IDS_PERMISSION_ALLOW) performClick:nil]; |
| 267 } | 262 } |
| 268 | 263 |
| 269 TEST_F(PermissionBubbleControllerTest, Deny) { | 264 TEST_F(PermissionBubbleControllerTest, Deny) { |
| 270 [controller_ showAtAnchor:NSZeroPoint | 265 [controller_ showWithDelegate:this |
| 271 withDelegate:this | 266 forRequests:requests_ |
| 272 forRequests:requests_ | 267 acceptStates:accept_states_]; |
| 273 acceptStates:accept_states_]; | |
| 274 | 268 |
| 275 EXPECT_CALL(*this, Deny()).Times(1); | 269 EXPECT_CALL(*this, Deny()).Times(1); |
| 276 [FindButtonWithTitle(IDS_PERMISSION_DENY) performClick:nil]; | 270 [FindButtonWithTitle(IDS_PERMISSION_DENY) performClick:nil]; |
| 277 } | 271 } |
| 278 | 272 |
| 279 TEST_F(PermissionBubbleControllerTest, ChangePermissionSelection) { | 273 TEST_F(PermissionBubbleControllerTest, ChangePermissionSelection) { |
| 280 AddRequest(kPermissionB); | 274 AddRequest(kPermissionB); |
| 281 | 275 |
| 282 accept_states_.push_back(true); // A | 276 accept_states_.push_back(true); // A |
| 283 accept_states_.push_back(false); // B | 277 accept_states_.push_back(false); // B |
| 284 | 278 |
| 285 [controller_ showAtAnchor:NSZeroPoint | 279 [controller_ showWithDelegate:this |
| 286 withDelegate:this | 280 forRequests:requests_ |
| 287 forRequests:requests_ | 281 acceptStates:accept_states_]; |
| 288 acceptStates:accept_states_]; | |
| 289 | 282 |
| 290 EXPECT_CALL(*this, ToggleAccept(0, false)).Times(1); | 283 EXPECT_CALL(*this, ToggleAccept(0, false)).Times(1); |
| 291 EXPECT_CALL(*this, ToggleAccept(1, true)).Times(1); | 284 EXPECT_CALL(*this, ToggleAccept(1, true)).Times(1); |
| 292 NSButton* menu_a = FindMenuButtonWithTitle(IDS_PERMISSION_ALLOW); | 285 NSButton* menu_a = FindMenuButtonWithTitle(IDS_PERMISSION_ALLOW); |
| 293 NSButton* menu_b = FindMenuButtonWithTitle(IDS_PERMISSION_DENY); | 286 NSButton* menu_b = FindMenuButtonWithTitle(IDS_PERMISSION_DENY); |
| 294 ChangePermissionMenuSelection(menu_a, IDS_PERMISSION_DENY); | 287 ChangePermissionMenuSelection(menu_a, IDS_PERMISSION_DENY); |
| 295 ChangePermissionMenuSelection(menu_b, IDS_PERMISSION_ALLOW); | 288 ChangePermissionMenuSelection(menu_b, IDS_PERMISSION_ALLOW); |
| 296 } | 289 } |
| 297 | 290 |
| 298 TEST_F(PermissionBubbleControllerTest, EscapeCloses) { | 291 TEST_F(PermissionBubbleControllerTest, EscapeCloses) { |
| 299 [controller_ showAtAnchor:NSZeroPoint | 292 [controller_ showWithDelegate:this |
| 300 withDelegate:this | 293 forRequests:requests_ |
| 301 forRequests:requests_ | 294 acceptStates:accept_states_]; |
| 302 acceptStates:accept_states_]; | |
| 303 | 295 |
| 304 EXPECT_TRUE([[controller_ window] isVisible]); | 296 EXPECT_TRUE([[controller_ window] isVisible]); |
| 305 [[controller_ window] | 297 [[controller_ window] |
| 306 performKeyEquivalent:cocoa_test_event_utils::KeyEventWithKeyCode( | 298 performKeyEquivalent:cocoa_test_event_utils::KeyEventWithKeyCode( |
| 307 kVK_Escape, '\e', NSKeyDown, 0)]; | 299 kVK_Escape, '\e', NSKeyDown, 0)]; |
| 308 EXPECT_FALSE([[controller_ window] isVisible]); | 300 EXPECT_FALSE([[controller_ window] isVisible]); |
| 309 } | 301 } |
| 310 | 302 |
| 311 TEST_F(PermissionBubbleControllerTest, EnterFullscreen) { | 303 TEST_F(PermissionBubbleControllerTest, EnterFullscreen) { |
| 312 [controller_ showAtAnchor:NSZeroPoint | 304 [controller_ showWithDelegate:this |
| 313 withDelegate:this | 305 forRequests:requests_ |
| 314 forRequests:requests_ | 306 acceptStates:accept_states_]; |
| 315 acceptStates:accept_states_]; | |
| 316 | 307 |
| 317 EXPECT_TRUE([[controller_ window] isVisible]); | 308 EXPECT_TRUE([[controller_ window] isVisible]); |
| 318 | 309 |
| 319 // Post the "enter fullscreen" notification. | 310 // Post the "enter fullscreen" notification. |
| 320 NSNotificationCenter* center = [NSNotificationCenter defaultCenter]; | 311 NSNotificationCenter* center = [NSNotificationCenter defaultCenter]; |
| 321 [center postNotificationName:NSWindowWillEnterFullScreenNotification | 312 [center postNotificationName:NSWindowWillEnterFullScreenNotification |
| 322 object:test_window()]; | 313 object:test_window()]; |
| 323 | 314 |
| 324 EXPECT_TRUE([[controller_ window] isVisible]); | 315 EXPECT_TRUE([[controller_ window] isVisible]); |
| 325 } | 316 } |
| 326 | 317 |
| 327 TEST_F(PermissionBubbleControllerTest, ExitFullscreen) { | 318 TEST_F(PermissionBubbleControllerTest, ExitFullscreen) { |
| 328 [controller_ showAtAnchor:NSZeroPoint | 319 [controller_ showWithDelegate:this |
| 329 withDelegate:this | 320 forRequests:requests_ |
| 330 forRequests:requests_ | 321 acceptStates:accept_states_]; |
| 331 acceptStates:accept_states_]; | |
| 332 | 322 |
| 333 EXPECT_TRUE([[controller_ window] isVisible]); | 323 EXPECT_TRUE([[controller_ window] isVisible]); |
| 334 | 324 |
| 335 // Post the "enter fullscreen" notification. | 325 // Post the "enter fullscreen" notification. |
| 336 NSNotificationCenter* center = [NSNotificationCenter defaultCenter]; | 326 NSNotificationCenter* center = [NSNotificationCenter defaultCenter]; |
| 337 [center postNotificationName:NSWindowWillExitFullScreenNotification | 327 [center postNotificationName:NSWindowWillExitFullScreenNotification |
| 338 object:test_window()]; | 328 object:test_window()]; |
| 339 | 329 |
| 340 EXPECT_TRUE([[controller_ window] isVisible]); | 330 EXPECT_TRUE([[controller_ window] isVisible]); |
| 341 } | 331 } |
| OLD | NEW |