| OLD | NEW |
| 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/mac/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_factory.h" | 8 #include "chrome/browser/bookmarks/bookmark_model_factory.h" |
| 9 #include "chrome/browser/profiles/profile.h" | 9 #include "chrome/browser/profiles/profile.h" |
| 10 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_controller.h" | 10 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_controller.h" |
| 11 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_view_cocoa.h" | 11 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_view_cocoa.h" |
| 12 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_button.h" | 12 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_button.h" |
| 13 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_button_cell.h" | 13 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_button_cell.h" |
| 14 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_folder_target.h" | 14 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_folder_target.h" |
| 15 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h" | 15 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h" |
| 16 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h" | 16 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h" |
| 17 #import "chrome/browser/ui/cocoa/url_drop_target.h" | 17 #import "chrome/browser/ui/cocoa/url_drop_target.h" |
| 18 #include "chrome/test/base/testing_profile.h" | 18 #include "chrome/test/base/testing_profile.h" |
| 19 #include "components/bookmarks/browser/bookmark_model.h" | 19 #include "components/bookmarks/browser/bookmark_model.h" |
| 20 #include "components/bookmarks/test/bookmark_test_helpers.h" | 20 #include "components/bookmarks/test/bookmark_test_helpers.h" |
| 21 #include "testing/gtest/include/gtest/gtest.h" | 21 #include "testing/gtest/include/gtest/gtest.h" |
| 22 #include "testing/platform_test.h" | 22 #include "testing/platform_test.h" |
| 23 #import "third_party/mozilla/NSPasteboard+Utils.h" | 23 #import "third_party/mozilla/NSPasteboard+Utils.h" |
| 24 #include "ui/base/clipboard/clipboard_util_mac.h" |
| 24 | 25 |
| 25 using bookmarks::BookmarkModel; | 26 using bookmarks::BookmarkModel; |
| 26 using bookmarks::BookmarkNode; | 27 using bookmarks::BookmarkNode; |
| 27 | 28 |
| 28 namespace { | 29 namespace { |
| 29 | 30 |
| 30 // Some values used for mocks and fakes. | 31 // Some values used for mocks and fakes. |
| 31 const CGFloat kFakeIndicatorPos = 7.0; | 32 const CGFloat kFakeIndicatorPos = 7.0; |
| 32 const NSPoint kPoint = {10, 10}; | 33 const NSPoint kPoint = {10, 10}; |
| 33 | 34 |
| (...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 230 | 231 |
| 231 base::scoped_nsobject<BookmarkButtonCell> button_cell( | 232 base::scoped_nsobject<BookmarkButtonCell> button_cell( |
| 232 [[BookmarkButtonCell buttonCellForNode:node | 233 [[BookmarkButtonCell buttonCellForNode:node |
| 233 text:nil | 234 text:nil |
| 234 image:nil | 235 image:nil |
| 235 menuController:nil] retain]); | 236 menuController:nil] retain]); |
| 236 base::scoped_nsobject<BookmarkButton> dragged_button( | 237 base::scoped_nsobject<BookmarkButton> dragged_button( |
| 237 [[BookmarkButton alloc] init]); | 238 [[BookmarkButton alloc] init]); |
| 238 [dragged_button setCell:button_cell]; | 239 [dragged_button setCell:button_cell]; |
| 239 [info setDraggingSource:dragged_button.get()]; | 240 [info setDraggingSource:dragged_button.get()]; |
| 240 [info setDragDataType:kBookmarkButtonDragType]; | 241 [info setDragDataType:ui::ClipboardUtil::UTIForPasteboardType( |
| 242 kBookmarkButtonDragType)]; |
| 241 [info setButton:dragged_button.get()]; | 243 [info setButton:dragged_button.get()]; |
| 242 [info setBookmarkModel:bookmark_model]; | 244 [info setBookmarkModel:bookmark_model]; |
| 243 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove); | 245 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove); |
| 244 EXPECT_TRUE([view_ performDragOperation:(id)info.get()]); | 246 EXPECT_TRUE([view_ performDragOperation:(id)info.get()]); |
| 245 EXPECT_TRUE([info dragButtonToPong]); | 247 EXPECT_TRUE([info dragButtonToPong]); |
| 246 EXPECT_FALSE([info dragButtonToShouldCopy]); | 248 EXPECT_FALSE([info dragButtonToShouldCopy]); |
| 247 EXPECT_FALSE([info dragURLsPong]); | 249 EXPECT_FALSE([info dragURLsPong]); |
| 248 EXPECT_TRUE([info dragBookmarkDataPong]); | 250 EXPECT_TRUE([info dragBookmarkDataPong]); |
| 249 } | 251 } |
| 250 | 252 |
| (...skipping 21 matching lines...) Expand all Loading... |
| 272 | 274 |
| 273 base::scoped_nsobject<BookmarkButtonCell> button_cell( | 275 base::scoped_nsobject<BookmarkButtonCell> button_cell( |
| 274 [[BookmarkButtonCell buttonCellForNode:node | 276 [[BookmarkButtonCell buttonCellForNode:node |
| 275 text:nil | 277 text:nil |
| 276 image:nil | 278 image:nil |
| 277 menuController:nil] retain]); | 279 menuController:nil] retain]); |
| 278 base::scoped_nsobject<BookmarkButton> dragged_button( | 280 base::scoped_nsobject<BookmarkButton> dragged_button( |
| 279 [[BookmarkButton alloc] init]); | 281 [[BookmarkButton alloc] init]); |
| 280 [dragged_button setCell:button_cell]; | 282 [dragged_button setCell:button_cell]; |
| 281 [info setDraggingSource:dragged_button.get()]; | 283 [info setDraggingSource:dragged_button.get()]; |
| 282 [info setDragDataType:kBookmarkButtonDragType]; | 284 [info setDragDataType:ui::ClipboardUtil::UTIForPasteboardType( |
| 285 kBookmarkButtonDragType)]; |
| 283 [info setButton:dragged_button.get()]; | 286 [info setButton:dragged_button.get()]; |
| 284 [info setBookmarkModel:BookmarkModelFactory::GetForProfile(other_profile)]; | 287 [info setBookmarkModel:BookmarkModelFactory::GetForProfile(other_profile)]; |
| 285 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove); | 288 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove); |
| 286 EXPECT_TRUE([view_ performDragOperation:(id)info.get()]); | 289 EXPECT_TRUE([view_ performDragOperation:(id)info.get()]); |
| 287 EXPECT_TRUE([info dragButtonToPong]); | 290 EXPECT_TRUE([info dragButtonToPong]); |
| 288 EXPECT_TRUE([info dragButtonToShouldCopy]); | 291 EXPECT_TRUE([info dragButtonToShouldCopy]); |
| 289 EXPECT_FALSE([info dragURLsPong]); | 292 EXPECT_FALSE([info dragURLsPong]); |
| 290 EXPECT_TRUE([info dragBookmarkDataPong]); | 293 EXPECT_TRUE([info dragBookmarkDataPong]); |
| 291 } | 294 } |
| 292 | 295 |
| (...skipping 17 matching lines...) Expand all Loading... |
| 310 | 313 |
| 311 TEST_F(BookmarkBarViewTest, BookmarkButtonDropIndicator) { | 314 TEST_F(BookmarkBarViewTest, BookmarkButtonDropIndicator) { |
| 312 base::scoped_nsobject<FakeBookmarkDraggingInfo> info( | 315 base::scoped_nsobject<FakeBookmarkDraggingInfo> info( |
| 313 [[FakeBookmarkDraggingInfo alloc] init]); | 316 [[FakeBookmarkDraggingInfo alloc] init]); |
| 314 [view_ setController:info.get()]; | 317 [view_ setController:info.get()]; |
| 315 [info reset]; | 318 [info reset]; |
| 316 | 319 |
| 317 base::scoped_nsobject<BookmarkButton> dragged_button( | 320 base::scoped_nsobject<BookmarkButton> dragged_button( |
| 318 [[BookmarkButton alloc] init]); | 321 [[BookmarkButton alloc] init]); |
| 319 [info setDraggingSource:dragged_button.get()]; | 322 [info setDraggingSource:dragged_button.get()]; |
| 320 [info setDragDataType:kBookmarkButtonDragType]; | 323 [info setDragDataType:ui::ClipboardUtil::UTIForPasteboardType( |
| 324 kBookmarkButtonDragType)]; |
| 321 EXPECT_FALSE([info draggingEnteredCalled]); | 325 EXPECT_FALSE([info draggingEnteredCalled]); |
| 322 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove); | 326 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove); |
| 323 EXPECT_TRUE([info draggingEnteredCalled]); // Ensure controller pinged. | 327 EXPECT_TRUE([info draggingEnteredCalled]); // Ensure controller pinged. |
| 324 EXPECT_TRUE([view_ dropIndicatorShown]); | 328 EXPECT_TRUE([view_ dropIndicatorShown]); |
| 325 EXPECT_EQ([view_ dropIndicatorPosition], kFakeIndicatorPos); | 329 EXPECT_EQ([view_ dropIndicatorPosition], kFakeIndicatorPos); |
| 326 | 330 |
| 327 [info setDropIndicatorShown:NO]; | 331 [info setDropIndicatorShown:NO]; |
| 328 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove); | 332 EXPECT_EQ([view_ draggingEntered:(id)info.get()], NSDragOperationMove); |
| 329 EXPECT_FALSE([view_ dropIndicatorShown]); | 333 EXPECT_FALSE([view_ dropIndicatorShown]); |
| 330 } | 334 } |
| 331 | 335 |
| 332 } // namespace | 336 } // namespace |
| OLD | NEW |