Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(592)

Side by Side Diff: chrome/browser/ui/cocoa/bookmarks/bookmark_bar_view_unittest.mm

Issue 17593006: mac: Update clients of scoped_nsobject.h. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: iwyu, scoped_nsprotocol Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 #include "base/memory/scoped_nsobject.h" 5 #include "base/mac/scoped_nsobject.h"
6 #include "base/strings/string16.h" 6 #include "base/strings/string16.h"
7 #include "base/strings/utf_string_conversions.h" 7 #include "base/strings/utf_string_conversions.h"
8 #include "chrome/browser/bookmarks/bookmark_model.h" 8 #include "chrome/browser/bookmarks/bookmark_model.h"
9 #include "chrome/browser/bookmarks/bookmark_model_factory.h" 9 #include "chrome/browser/bookmarks/bookmark_model_factory.h"
10 #include "chrome/browser/profiles/profile.h" 10 #include "chrome/browser/profiles/profile.h"
11 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_controller.h" 11 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_controller.h"
12 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_view.h" 12 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_view.h"
13 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_button.h" 13 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_button.h"
14 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_button_cell.h" 14 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_button_cell.h"
15 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_folder_target.h" 15 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_folder_target.h"
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after
194 194
195 namespace { 195 namespace {
196 196
197 class BookmarkBarViewTest : public CocoaProfileTest { 197 class BookmarkBarViewTest : public CocoaProfileTest {
198 public: 198 public:
199 virtual void SetUp() { 199 virtual void SetUp() {
200 CocoaProfileTest::SetUp(); 200 CocoaProfileTest::SetUp();
201 view_.reset([[BookmarkBarView alloc] init]); 201 view_.reset([[BookmarkBarView alloc] init]);
202 } 202 }
203 203
204 scoped_nsobject<BookmarkBarView> view_; 204 base::scoped_nsobject<BookmarkBarView> view_;
205 }; 205 };
206 206
207 TEST_F(BookmarkBarViewTest, CanDragWindow) { 207 TEST_F(BookmarkBarViewTest, CanDragWindow) {
208 EXPECT_FALSE([view_ mouseDownCanMoveWindow]); 208 EXPECT_FALSE([view_ mouseDownCanMoveWindow]);
209 } 209 }
210 210
211 TEST_F(BookmarkBarViewTest, BookmarkButtonDragAndDrop) { 211 TEST_F(BookmarkBarViewTest, BookmarkButtonDragAndDrop) {
212 scoped_nsobject<FakeBookmarkDraggingInfo> 212 base::scoped_nsobject<FakeBookmarkDraggingInfo> info(
213 info([[FakeBookmarkDraggingInfo alloc] init]); 213 [[FakeBookmarkDraggingInfo alloc] init]);
214 [view_ setController:info.get()]; 214 [view_ setController:info.get()];
215 [info reset]; 215 [info reset];
216 216
217 BookmarkModel* bookmark_model = 217 BookmarkModel* bookmark_model =
218 BookmarkModelFactory::GetForProfile(profile()); 218 BookmarkModelFactory::GetForProfile(profile());
219 const BookmarkNode* node = 219 const BookmarkNode* node =
220 bookmark_model->AddURL(bookmark_model->bookmark_bar_node(), 220 bookmark_model->AddURL(bookmark_model->bookmark_bar_node(),
221 0, 221 0,
222 ASCIIToUTF16("Test Bookmark"), 222 ASCIIToUTF16("Test Bookmark"),
223 GURL("http://www.exmaple.com")); 223 GURL("http://www.exmaple.com"));
224 224
225 scoped_nsobject<BookmarkButtonCell> button_cell( 225 base::scoped_nsobject<BookmarkButtonCell> button_cell(
226 [[BookmarkButtonCell buttonCellForNode:node 226 [[BookmarkButtonCell buttonCellForNode:node
227 text:nil 227 text:nil
228 image:nil 228 image:nil
229 menuController:nil] retain]); 229 menuController:nil] retain]);
230 scoped_nsobject<BookmarkButton> dragged_button([[BookmarkButton alloc] init]); 230 base::scoped_nsobject<BookmarkButton> dragged_button(
231 [[BookmarkButton alloc] init]);
231 [dragged_button setCell:button_cell]; 232 [dragged_button setCell:button_cell];
232 [info setDraggingSource:dragged_button.get()]; 233 [info setDraggingSource:dragged_button.get()];
233 [info setDragDataType:kBookmarkButtonDragType]; 234 [info setDragDataType:kBookmarkButtonDragType];
234 [info setButton:dragged_button.get()]; 235 [info setButton:dragged_button.get()];
235 [info setBookmarkModel:bookmark_model]; 236 [info setBookmarkModel:bookmark_model];
236 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove); 237 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove);
237 EXPECT_TRUE([view_ performDragOperation:(id)info.get()]); 238 EXPECT_TRUE([view_ performDragOperation:(id)info.get()]);
238 EXPECT_TRUE([info dragButtonToPong]); 239 EXPECT_TRUE([info dragButtonToPong]);
239 EXPECT_FALSE([info dragButtonToShouldCopy]); 240 EXPECT_FALSE([info dragButtonToShouldCopy]);
240 EXPECT_FALSE([info dragURLsPong]); 241 EXPECT_FALSE([info dragURLsPong]);
241 EXPECT_TRUE([info dragBookmarkDataPong]); 242 EXPECT_TRUE([info dragBookmarkDataPong]);
242 } 243 }
243 244
244 // When dragging bookmarks across profiles, we should always copy, never move. 245 // When dragging bookmarks across profiles, we should always copy, never move.
245 TEST_F(BookmarkBarViewTest, BookmarkButtonDragAndDropAcrossProfiles) { 246 TEST_F(BookmarkBarViewTest, BookmarkButtonDragAndDropAcrossProfiles) {
246 scoped_nsobject<FakeBookmarkDraggingInfo> 247 base::scoped_nsobject<FakeBookmarkDraggingInfo> info(
247 info([[FakeBookmarkDraggingInfo alloc] init]); 248 [[FakeBookmarkDraggingInfo alloc] init]);
248 [view_ setController:info.get()]; 249 [view_ setController:info.get()];
249 [info reset]; 250 [info reset];
250 251
251 // |other_profile| is owned by the |testing_profile_manager|. 252 // |other_profile| is owned by the |testing_profile_manager|.
252 TestingProfile* other_profile = 253 TestingProfile* other_profile =
253 testing_profile_manager()->CreateTestingProfile("other"); 254 testing_profile_manager()->CreateTestingProfile("other");
254 other_profile->CreateBookmarkModel(true); 255 other_profile->CreateBookmarkModel(true);
255 256
256 BookmarkModel* bookmark_model = 257 BookmarkModel* bookmark_model =
257 BookmarkModelFactory::GetForProfile(profile()); 258 BookmarkModelFactory::GetForProfile(profile());
258 ui_test_utils::WaitForBookmarkModelToLoad(bookmark_model); 259 ui_test_utils::WaitForBookmarkModelToLoad(bookmark_model);
259 260
260 const BookmarkNode* node = 261 const BookmarkNode* node =
261 bookmark_model->AddURL(bookmark_model->bookmark_bar_node(), 262 bookmark_model->AddURL(bookmark_model->bookmark_bar_node(),
262 0, 263 0,
263 ASCIIToUTF16("Test Bookmark"), 264 ASCIIToUTF16("Test Bookmark"),
264 GURL("http://www.exmaple.com")); 265 GURL("http://www.exmaple.com"));
265 266
266 scoped_nsobject<BookmarkButtonCell> button_cell( 267 base::scoped_nsobject<BookmarkButtonCell> button_cell(
267 [[BookmarkButtonCell buttonCellForNode:node 268 [[BookmarkButtonCell buttonCellForNode:node
268 text:nil 269 text:nil
269 image:nil 270 image:nil
270 menuController:nil] retain]); 271 menuController:nil] retain]);
271 scoped_nsobject<BookmarkButton> dragged_button([[BookmarkButton alloc] init]); 272 base::scoped_nsobject<BookmarkButton> dragged_button(
273 [[BookmarkButton alloc] init]);
272 [dragged_button setCell:button_cell]; 274 [dragged_button setCell:button_cell];
273 [info setDraggingSource:dragged_button.get()]; 275 [info setDraggingSource:dragged_button.get()];
274 [info setDragDataType:kBookmarkButtonDragType]; 276 [info setDragDataType:kBookmarkButtonDragType];
275 [info setButton:dragged_button.get()]; 277 [info setButton:dragged_button.get()];
276 [info setBookmarkModel:BookmarkModelFactory::GetForProfile(other_profile)]; 278 [info setBookmarkModel:BookmarkModelFactory::GetForProfile(other_profile)];
277 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove); 279 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove);
278 EXPECT_TRUE([view_ performDragOperation:(id)info.get()]); 280 EXPECT_TRUE([view_ performDragOperation:(id)info.get()]);
279 EXPECT_TRUE([info dragButtonToPong]); 281 EXPECT_TRUE([info dragButtonToPong]);
280 EXPECT_TRUE([info dragButtonToShouldCopy]); 282 EXPECT_TRUE([info dragButtonToShouldCopy]);
281 EXPECT_FALSE([info dragURLsPong]); 283 EXPECT_FALSE([info dragURLsPong]);
282 EXPECT_TRUE([info dragBookmarkDataPong]); 284 EXPECT_TRUE([info dragBookmarkDataPong]);
283 } 285 }
284 286
285 TEST_F(BookmarkBarViewTest, URLDragAndDrop) { 287 TEST_F(BookmarkBarViewTest, URLDragAndDrop) {
286 scoped_nsobject<FakeBookmarkDraggingInfo> 288 base::scoped_nsobject<FakeBookmarkDraggingInfo> info(
287 info([[FakeBookmarkDraggingInfo alloc] init]); 289 [[FakeBookmarkDraggingInfo alloc] init]);
288 [view_ setController:info.get()]; 290 [view_ setController:info.get()];
289 [info reset]; 291 [info reset];
290 292
291 NSArray* dragTypes = [URLDropTargetHandler handledDragTypes]; 293 NSArray* dragTypes = [URLDropTargetHandler handledDragTypes];
292 for (NSString* type in dragTypes) { 294 for (NSString* type in dragTypes) {
293 [info setDragDataType:type]; 295 [info setDragDataType:type];
294 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationCopy); 296 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationCopy);
295 EXPECT_TRUE([view_ performDragOperation:(id)info.get()]); 297 EXPECT_TRUE([view_ performDragOperation:(id)info.get()]);
296 EXPECT_FALSE([info dragButtonToPong]); 298 EXPECT_FALSE([info dragButtonToPong]);
297 EXPECT_TRUE([info dragURLsPong]); 299 EXPECT_TRUE([info dragURLsPong]);
298 EXPECT_TRUE([info dragBookmarkDataPong]); 300 EXPECT_TRUE([info dragBookmarkDataPong]);
299 [info reset]; 301 [info reset];
300 } 302 }
301 } 303 }
302 304
303 TEST_F(BookmarkBarViewTest, BookmarkButtonDropIndicator) { 305 TEST_F(BookmarkBarViewTest, BookmarkButtonDropIndicator) {
304 scoped_nsobject<FakeBookmarkDraggingInfo> 306 base::scoped_nsobject<FakeBookmarkDraggingInfo> info(
305 info([[FakeBookmarkDraggingInfo alloc] init]); 307 [[FakeBookmarkDraggingInfo alloc] init]);
306 [view_ setController:info.get()]; 308 [view_ setController:info.get()];
307 [info reset]; 309 [info reset];
308 310
309 scoped_nsobject<BookmarkButton> dragged_button([[BookmarkButton alloc] init]); 311 base::scoped_nsobject<BookmarkButton> dragged_button(
312 [[BookmarkButton alloc] init]);
310 [info setDraggingSource:dragged_button.get()]; 313 [info setDraggingSource:dragged_button.get()];
311 [info setDragDataType:kBookmarkButtonDragType]; 314 [info setDragDataType:kBookmarkButtonDragType];
312 EXPECT_FALSE([info draggingEnteredCalled]); 315 EXPECT_FALSE([info draggingEnteredCalled]);
313 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove); 316 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove);
314 EXPECT_TRUE([info draggingEnteredCalled]); // Ensure controller pinged. 317 EXPECT_TRUE([info draggingEnteredCalled]); // Ensure controller pinged.
315 EXPECT_TRUE([view_ dropIndicatorShown]); 318 EXPECT_TRUE([view_ dropIndicatorShown]);
316 EXPECT_EQ([view_ dropIndicatorPosition], kFakeIndicatorPos); 319 EXPECT_EQ([view_ dropIndicatorPosition], kFakeIndicatorPos);
317 320
318 [info setDropIndicatorShown:NO]; 321 [info setDropIndicatorShown:NO];
319 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove); 322 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove);
320 EXPECT_FALSE([view_ dropIndicatorShown]); 323 EXPECT_FALSE([view_ dropIndicatorShown]);
321 } 324 }
322 325
323 } // namespace 326 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698