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

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

Issue 23570009: bookmarks: Cleanup, remove BookmarkModelTestUtils class. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 3 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/basictypes.h" 5 #include "base/basictypes.h"
6 #include "base/mac/scoped_nsobject.h" 6 #include "base/mac/scoped_nsobject.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/bookmarks/bookmark_model_test_utils.h" 10 #include "chrome/browser/bookmarks/bookmark_test_helpers.h"
11 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_constants.h" 11 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_constants.h"
12 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_controller.h" 12 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_controller.h"
13 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_folder_button_cell.h" 13 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_folder_button_cell.h"
14 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_folder_controller.h" 14 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_folder_controller.h"
15 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_unittest_helper.h" 15 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_unittest_helper.h"
16 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h" 16 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h"
17 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h" 17 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h"
18 #import "chrome/browser/ui/cocoa/view_resizer_pong.h" 18 #import "chrome/browser/ui/cocoa/view_resizer_pong.h"
19 #include "testing/gtest/include/gtest/gtest.h" 19 #include "testing/gtest/include/gtest/gtest.h"
20 #import "testing/gtest_mac.h" 20 #import "testing/gtest_mac.h"
(...skipping 697 matching lines...) Expand 10 before | Expand all | Expand 10 after
718 } 718 }
719 }; 719 };
720 720
721 TEST_F(BookmarkBarFolderControllerMenuTest, DragMoveBarBookmarkToFolder) { 721 TEST_F(BookmarkBarFolderControllerMenuTest, DragMoveBarBookmarkToFolder) {
722 WithNoAnimation at_all; 722 WithNoAnimation at_all;
723 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 723 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
724 const BookmarkNode* root = model->bookmark_bar_node(); 724 const BookmarkNode* root = model->bookmark_bar_node();
725 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b " 725 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b "
726 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ 4f2f1b " 726 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ 4f2f1b "
727 "4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b "); 727 "4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b ");
728 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 728 test::AddNodesFromModelString(model, root, model_string);
729 729
730 // Validate initial model. 730 // Validate initial model.
731 std::string actualModelString = 731 std::string actualModelString = test::ModelStringFromNode(root);
732 BookmarkModelTestUtils::ModelStringFromNode(root);
733 EXPECT_EQ(model_string, actualModelString); 732 EXPECT_EQ(model_string, actualModelString);
734 733
735 // Pop up a folder menu and drag in a button from the bar. 734 // Pop up a folder menu and drag in a button from the bar.
736 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"2f"]; 735 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"2f"];
737 NSRect oldToFolderFrame = [toFolder frame]; 736 NSRect oldToFolderFrame = [toFolder frame];
738 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:) 737 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:)
739 withObject:toFolder]; 738 withObject:toFolder];
740 BookmarkBarFolderController* folderController = [bar_ folderController]; 739 BookmarkBarFolderController* folderController = [bar_ folderController];
741 EXPECT_TRUE(folderController); 740 EXPECT_TRUE(folderController);
742 NSWindow* toWindow = [folderController window]; 741 NSWindow* toWindow = [folderController window];
743 EXPECT_TRUE(toWindow); 742 EXPECT_TRUE(toWindow);
744 NSRect oldToWindowFrame = [toWindow frame]; 743 NSRect oldToWindowFrame = [toWindow frame];
745 // Drag a bar button onto a bookmark (i.e. not a folder) in a folder 744 // Drag a bar button onto a bookmark (i.e. not a folder) in a folder
746 // so it should end up below the target bookmark. 745 // so it should end up below the target bookmark.
747 BookmarkButton* draggedButton = [bar_ buttonWithTitleEqualTo:@"1b"]; 746 BookmarkButton* draggedButton = [bar_ buttonWithTitleEqualTo:@"1b"];
748 ASSERT_TRUE(draggedButton); 747 ASSERT_TRUE(draggedButton);
749 CGFloat horizontalShift = 748 CGFloat horizontalShift =
750 NSWidth([draggedButton frame]) + bookmarks::kBookmarkHorizontalPadding; 749 NSWidth([draggedButton frame]) + bookmarks::kBookmarkHorizontalPadding;
751 BookmarkButton* targetButton = 750 BookmarkButton* targetButton =
752 [folderController buttonWithTitleEqualTo:@"2f1b"]; 751 [folderController buttonWithTitleEqualTo:@"2f1b"];
753 ASSERT_TRUE(targetButton); 752 ASSERT_TRUE(targetButton);
754 [folderController dragButton:draggedButton 753 [folderController dragButton:draggedButton
755 to:[targetButton center] 754 to:[targetButton center]
756 copy:NO]; 755 copy:NO];
757 // The button should have landed just after "2f1b". 756 // The button should have landed just after "2f1b".
758 const std::string expected_string("2f:[ 2f1b 1b 2f2f:[ 2f2f1b " 757 const std::string expected_string("2f:[ 2f1b 1b 2f2f:[ 2f2f1b "
759 "2f2f2b 2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ " 758 "2f2f2b 2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ "
760 "4f2f1b 4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b "); 759 "4f2f1b 4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b ");
761 EXPECT_EQ(expected_string, BookmarkModelTestUtils::ModelStringFromNode(root)); 760 EXPECT_EQ(expected_string, test::ModelStringFromNode(root));
762 761
763 // Verify the window still appears by looking for its controller. 762 // Verify the window still appears by looking for its controller.
764 EXPECT_TRUE([bar_ folderController]); 763 EXPECT_TRUE([bar_ folderController]);
765 764
766 // Gather the new frames. 765 // Gather the new frames.
767 NSRect newToFolderFrame = [toFolder frame]; 766 NSRect newToFolderFrame = [toFolder frame];
768 NSRect newToWindowFrame = [toWindow frame]; 767 NSRect newToWindowFrame = [toWindow frame];
769 // The toFolder should have shifted left horizontally but not vertically. 768 // The toFolder should have shifted left horizontally but not vertically.
770 NSRect expectedToFolderFrame = 769 NSRect expectedToFolderFrame =
771 NSOffsetRect(oldToFolderFrame, -horizontalShift, 0); 770 NSOffsetRect(oldToFolderFrame, -horizontalShift, 0);
(...skipping 10 matching lines...) Expand all
782 [folderController validateMenuSpacing]; 781 [folderController validateMenuSpacing];
783 782
784 // Move the button back to the bar at the beginning. 783 // Move the button back to the bar at the beginning.
785 draggedButton = [folderController buttonWithTitleEqualTo:@"1b"]; 784 draggedButton = [folderController buttonWithTitleEqualTo:@"1b"];
786 ASSERT_TRUE(draggedButton); 785 ASSERT_TRUE(draggedButton);
787 targetButton = [bar_ buttonWithTitleEqualTo:@"2f"]; 786 targetButton = [bar_ buttonWithTitleEqualTo:@"2f"];
788 ASSERT_TRUE(targetButton); 787 ASSERT_TRUE(targetButton);
789 [bar_ dragButton:draggedButton 788 [bar_ dragButton:draggedButton
790 to:[targetButton left] 789 to:[targetButton left]
791 copy:NO]; 790 copy:NO];
792 EXPECT_EQ(model_string, BookmarkModelTestUtils::ModelStringFromNode(root)); 791 EXPECT_EQ(model_string, test::ModelStringFromNode(root));
793 // Don't check the folder window since it's not supposed to be showing. 792 // Don't check the folder window since it's not supposed to be showing.
794 } 793 }
795 794
796 TEST_F(BookmarkBarFolderControllerMenuTest, DragCopyBarBookmarkToFolder) { 795 TEST_F(BookmarkBarFolderControllerMenuTest, DragCopyBarBookmarkToFolder) {
797 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 796 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
798 const BookmarkNode* root = model->bookmark_bar_node(); 797 const BookmarkNode* root = model->bookmark_bar_node();
799 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b " 798 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b "
800 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ 4f2f1b " 799 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ 4f2f1b "
801 "4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b "); 800 "4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b ");
802 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 801 test::AddNodesFromModelString(model, root, model_string);
803 802
804 // Validate initial model. 803 // Validate initial model.
805 std::string actualModelString = 804 std::string actualModelString = test::ModelStringFromNode(root);
806 BookmarkModelTestUtils::ModelStringFromNode(root);
807 EXPECT_EQ(model_string, actualModelString); 805 EXPECT_EQ(model_string, actualModelString);
808 806
809 // Pop up a folder menu and copy in a button from the bar. 807 // Pop up a folder menu and copy in a button from the bar.
810 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"2f"]; 808 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"2f"];
811 ASSERT_TRUE(toFolder); 809 ASSERT_TRUE(toFolder);
812 NSRect oldToFolderFrame = [toFolder frame]; 810 NSRect oldToFolderFrame = [toFolder frame];
813 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:) 811 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:)
814 withObject:toFolder]; 812 withObject:toFolder];
815 BookmarkBarFolderController* folderController = [bar_ folderController]; 813 BookmarkBarFolderController* folderController = [bar_ folderController];
816 EXPECT_TRUE(folderController); 814 EXPECT_TRUE(folderController);
817 NSWindow* toWindow = [folderController window]; 815 NSWindow* toWindow = [folderController window];
818 EXPECT_TRUE(toWindow); 816 EXPECT_TRUE(toWindow);
819 NSRect oldToWindowFrame = [toWindow frame]; 817 NSRect oldToWindowFrame = [toWindow frame];
820 // Drag a bar button onto a bookmark (i.e. not a folder) in a folder 818 // Drag a bar button onto a bookmark (i.e. not a folder) in a folder
821 // so it should end up below the target bookmark. 819 // so it should end up below the target bookmark.
822 BookmarkButton* draggedButton = [bar_ buttonWithTitleEqualTo:@"1b"]; 820 BookmarkButton* draggedButton = [bar_ buttonWithTitleEqualTo:@"1b"];
823 ASSERT_TRUE(draggedButton); 821 ASSERT_TRUE(draggedButton);
824 BookmarkButton* targetButton = 822 BookmarkButton* targetButton =
825 [folderController buttonWithTitleEqualTo:@"2f1b"]; 823 [folderController buttonWithTitleEqualTo:@"2f1b"];
826 ASSERT_TRUE(targetButton); 824 ASSERT_TRUE(targetButton);
827 [folderController dragButton:draggedButton 825 [folderController dragButton:draggedButton
828 to:[targetButton center] 826 to:[targetButton center]
829 copy:YES]; 827 copy:YES];
830 // The button should have landed just after "2f1b". 828 // The button should have landed just after "2f1b".
831 const std::string expected_1("1b 2f:[ 2f1b 1b 2f2f:[ 2f2f1b " 829 const std::string expected_1("1b 2f:[ 2f1b 1b 2f2f:[ 2f2f1b "
832 "2f2f2b 2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ " 830 "2f2f2b 2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ "
833 "4f2f1b 4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b "); 831 "4f2f1b 4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b ");
834 EXPECT_EQ(expected_1, BookmarkModelTestUtils::ModelStringFromNode(root)); 832 EXPECT_EQ(expected_1, test::ModelStringFromNode(root));
835 833
836 // Gather the new frames. 834 // Gather the new frames.
837 NSRect newToFolderFrame = [toFolder frame]; 835 NSRect newToFolderFrame = [toFolder frame];
838 NSRect newToWindowFrame = [toWindow frame]; 836 NSRect newToWindowFrame = [toWindow frame];
839 // The toFolder should have shifted. 837 // The toFolder should have shifted.
840 EXPECT_NSRECT_EQ(oldToFolderFrame, newToFolderFrame); 838 EXPECT_NSRECT_EQ(oldToFolderFrame, newToFolderFrame);
841 // The toWindow should have shifted down vertically and grown vertically. 839 // The toWindow should have shifted down vertically and grown vertically.
842 NSRect expectedToWindowFrame = oldToWindowFrame; 840 NSRect expectedToWindowFrame = oldToWindowFrame;
843 expectedToWindowFrame.origin.y -= bookmarks::kBookmarkFolderButtonHeight; 841 expectedToWindowFrame.origin.y -= bookmarks::kBookmarkFolderButtonHeight;
844 expectedToWindowFrame.size.height += bookmarks::kBookmarkFolderButtonHeight; 842 expectedToWindowFrame.size.height += bookmarks::kBookmarkFolderButtonHeight;
845 EXPECT_NSRECT_EQ(expectedToWindowFrame, newToWindowFrame); 843 EXPECT_NSRECT_EQ(expectedToWindowFrame, newToWindowFrame);
846 844
847 // Copy the button back to the bar after "3b". 845 // Copy the button back to the bar after "3b".
848 draggedButton = [folderController buttonWithTitleEqualTo:@"1b"]; 846 draggedButton = [folderController buttonWithTitleEqualTo:@"1b"];
849 ASSERT_TRUE(draggedButton); 847 ASSERT_TRUE(draggedButton);
850 targetButton = [bar_ buttonWithTitleEqualTo:@"4f"]; 848 targetButton = [bar_ buttonWithTitleEqualTo:@"4f"];
851 ASSERT_TRUE(targetButton); 849 ASSERT_TRUE(targetButton);
852 [bar_ dragButton:draggedButton 850 [bar_ dragButton:draggedButton
853 to:[targetButton left] 851 to:[targetButton left]
854 copy:YES]; 852 copy:YES];
855 const std::string expected_2("1b 2f:[ 2f1b 1b 2f2f:[ 2f2f1b " 853 const std::string expected_2("1b 2f:[ 2f1b 1b 2f2f:[ 2f2f1b "
856 "2f2f2b 2f2f3b ] 2f3b ] 3b 1b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ " 854 "2f2f2b 2f2f3b ] 2f3b ] 3b 1b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ "
857 "4f2f1b 4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b "); 855 "4f2f1b 4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b ");
858 EXPECT_EQ(expected_2, BookmarkModelTestUtils::ModelStringFromNode(root)); 856 EXPECT_EQ(expected_2, test::ModelStringFromNode(root));
859 } 857 }
860 858
861 TEST_F(BookmarkBarFolderControllerMenuTest, DragMoveBarBookmarkToSubfolder) { 859 TEST_F(BookmarkBarFolderControllerMenuTest, DragMoveBarBookmarkToSubfolder) {
862 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 860 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
863 const BookmarkNode* root = model->bookmark_bar_node(); 861 const BookmarkNode* root = model->bookmark_bar_node();
864 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b " 862 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b "
865 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ 4f2f1b " 863 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ 4f2f1b "
866 "4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b "); 864 "4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b ");
867 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 865 test::AddNodesFromModelString(model, root, model_string);
868 866
869 // Validate initial model. 867 // Validate initial model.
870 std::string actualModelString = 868 std::string actualModelString = test::ModelStringFromNode(root);
871 BookmarkModelTestUtils::ModelStringFromNode(root);
872 EXPECT_EQ(model_string, actualModelString); 869 EXPECT_EQ(model_string, actualModelString);
873 870
874 // Pop up a folder menu and a subfolder menu. 871 // Pop up a folder menu and a subfolder menu.
875 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"4f"]; 872 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"4f"];
876 ASSERT_TRUE(toFolder); 873 ASSERT_TRUE(toFolder);
877 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:) 874 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:)
878 withObject:toFolder]; 875 withObject:toFolder];
879 BookmarkBarFolderController* folderController = [bar_ folderController]; 876 BookmarkBarFolderController* folderController = [bar_ folderController];
880 EXPECT_TRUE(folderController); 877 EXPECT_TRUE(folderController);
881 NSWindow* toWindow = [folderController window]; 878 NSWindow* toWindow = [folderController window];
(...skipping 17 matching lines...) Expand all
899 BookmarkButton* targetButton = 896 BookmarkButton* targetButton =
900 [subfolderController buttonWithTitleEqualTo:@"4f2f3b"]; 897 [subfolderController buttonWithTitleEqualTo:@"4f2f3b"];
901 ASSERT_TRUE(targetButton); 898 ASSERT_TRUE(targetButton);
902 [subfolderController dragButton:draggedButton 899 [subfolderController dragButton:draggedButton
903 to:[targetButton center] 900 to:[targetButton center]
904 copy:NO]; 901 copy:NO];
905 // The button should have landed just after "2f". 902 // The button should have landed just after "2f".
906 const std::string expected_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b " 903 const std::string expected_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b "
907 "2f2f2b 2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ " 904 "2f2f2b 2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ "
908 "4f2f1b 4f2f2b 4f2f3b 5b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] "); 905 "4f2f1b 4f2f2b 4f2f3b 5b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] ");
909 EXPECT_EQ(expected_string, BookmarkModelTestUtils::ModelStringFromNode(root)); 906 EXPECT_EQ(expected_string, test::ModelStringFromNode(root));
910 907
911 // Check button spacing. 908 // Check button spacing.
912 [folderController validateMenuSpacing]; 909 [folderController validateMenuSpacing];
913 [subfolderController validateMenuSpacing]; 910 [subfolderController validateMenuSpacing];
914 911
915 // Check the window layouts. The folder window should not have changed, 912 // Check the window layouts. The folder window should not have changed,
916 // but the subfolder window should have shifted vertically and grown. 913 // but the subfolder window should have shifted vertically and grown.
917 NSRect newToWindowFrame = [toWindow frame]; 914 NSRect newToWindowFrame = [toWindow frame];
918 EXPECT_NSRECT_EQ(oldToWindowFrame, newToWindowFrame); 915 EXPECT_NSRECT_EQ(oldToWindowFrame, newToWindowFrame);
919 NSRect newToSubwindowFrame = [toSubwindow frame]; 916 NSRect newToSubwindowFrame = [toSubwindow frame];
920 NSRect expectedToSubwindowFrame = oldToSubwindowFrame; 917 NSRect expectedToSubwindowFrame = oldToSubwindowFrame;
921 expectedToSubwindowFrame.origin.y -= bookmarks::kBookmarkFolderButtonHeight; 918 expectedToSubwindowFrame.origin.y -= bookmarks::kBookmarkFolderButtonHeight;
922 expectedToSubwindowFrame.size.height += 919 expectedToSubwindowFrame.size.height +=
923 bookmarks::kBookmarkFolderButtonHeight; 920 bookmarks::kBookmarkFolderButtonHeight;
924 EXPECT_NSRECT_EQ(expectedToSubwindowFrame, newToSubwindowFrame); 921 EXPECT_NSRECT_EQ(expectedToSubwindowFrame, newToSubwindowFrame);
925 } 922 }
926 923
927 TEST_F(BookmarkBarFolderControllerMenuTest, DragMoveWithinFolder) { 924 TEST_F(BookmarkBarFolderControllerMenuTest, DragMoveWithinFolder) {
928 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 925 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
929 const BookmarkNode* root = model->bookmark_bar_node(); 926 const BookmarkNode* root = model->bookmark_bar_node();
930 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b " 927 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b "
931 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ 4f2f1b " 928 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ 4f2f1b "
932 "4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b "); 929 "4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b ");
933 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 930 test::AddNodesFromModelString(model, root, model_string);
934 931
935 // Validate initial model. 932 // Validate initial model.
936 std::string actualModelString = 933 std::string actualModelString = test::ModelStringFromNode(root);
937 BookmarkModelTestUtils::ModelStringFromNode(root);
938 EXPECT_EQ(model_string, actualModelString); 934 EXPECT_EQ(model_string, actualModelString);
939 935
940 // Pop up a folder menu. 936 // Pop up a folder menu.
941 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"4f"]; 937 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"4f"];
942 ASSERT_TRUE(toFolder); 938 ASSERT_TRUE(toFolder);
943 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:) 939 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:)
944 withObject:toFolder]; 940 withObject:toFolder];
945 BookmarkBarFolderController* folderController = [bar_ folderController]; 941 BookmarkBarFolderController* folderController = [bar_ folderController];
946 EXPECT_TRUE(folderController); 942 EXPECT_TRUE(folderController);
947 NSWindow* toWindow = [folderController window]; 943 NSWindow* toWindow = [folderController window];
948 EXPECT_TRUE(toWindow); 944 EXPECT_TRUE(toWindow);
949 NSRect oldToWindowFrame = [toWindow frame]; 945 NSRect oldToWindowFrame = [toWindow frame];
950 // Drag a folder button to the top within the same parent. 946 // Drag a folder button to the top within the same parent.
951 BookmarkButton* draggedButton = 947 BookmarkButton* draggedButton =
952 [folderController buttonWithTitleEqualTo:@"4f2f"]; 948 [folderController buttonWithTitleEqualTo:@"4f2f"];
953 ASSERT_TRUE(draggedButton); 949 ASSERT_TRUE(draggedButton);
954 BookmarkButton* targetButton = 950 BookmarkButton* targetButton =
955 [folderController buttonWithTitleEqualTo:@"4f1f"]; 951 [folderController buttonWithTitleEqualTo:@"4f1f"];
956 ASSERT_TRUE(targetButton); 952 ASSERT_TRUE(targetButton);
957 [folderController dragButton:draggedButton 953 [folderController dragButton:draggedButton
958 to:[targetButton top] 954 to:[targetButton top]
959 copy:NO]; 955 copy:NO];
960 // The button should have landed above "4f1f". 956 // The button should have landed above "4f1f".
961 const std::string expected_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b " 957 const std::string expected_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b "
962 "2f2f2b 2f2f3b ] 2f3b ] 3b 4f:[ 4f2f:[ 4f2f1b 4f2f2b 4f2f3b ] " 958 "2f2f2b 2f2f3b ] 2f3b ] 3b 4f:[ 4f2f:[ 4f2f1b 4f2f2b 4f2f3b ] "
963 "4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b "); 959 "4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b ");
964 EXPECT_EQ(expected_string, BookmarkModelTestUtils::ModelStringFromNode(root)); 960 EXPECT_EQ(expected_string, test::ModelStringFromNode(root));
965 961
966 // The window should not have gone away. 962 // The window should not have gone away.
967 EXPECT_TRUE([bar_ folderController]); 963 EXPECT_TRUE([bar_ folderController]);
968 964
969 // The folder window should not have changed. 965 // The folder window should not have changed.
970 NSRect newToWindowFrame = [toWindow frame]; 966 NSRect newToWindowFrame = [toWindow frame];
971 EXPECT_NSRECT_EQ(oldToWindowFrame, newToWindowFrame); 967 EXPECT_NSRECT_EQ(oldToWindowFrame, newToWindowFrame);
972 968
973 // Check button spacing. 969 // Check button spacing.
974 [folderController validateMenuSpacing]; 970 [folderController validateMenuSpacing];
975 } 971 }
976 972
977 TEST_F(BookmarkBarFolderControllerMenuTest, DragParentOntoChild) { 973 TEST_F(BookmarkBarFolderControllerMenuTest, DragParentOntoChild) {
978 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 974 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
979 const BookmarkNode* root = model->bookmark_bar_node(); 975 const BookmarkNode* root = model->bookmark_bar_node();
980 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b " 976 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b "
981 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ 4f2f1b " 977 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ 4f2f1b "
982 "4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b "); 978 "4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b ");
983 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 979 test::AddNodesFromModelString(model, root, model_string);
984 980
985 // Validate initial model. 981 // Validate initial model.
986 std::string actualModelString = 982 std::string actualModelString = test::ModelStringFromNode(root);
987 BookmarkModelTestUtils::ModelStringFromNode(root);
988 EXPECT_EQ(model_string, actualModelString); 983 EXPECT_EQ(model_string, actualModelString);
989 984
990 // Pop up a folder menu. 985 // Pop up a folder menu.
991 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"4f"]; 986 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"4f"];
992 ASSERT_TRUE(toFolder); 987 ASSERT_TRUE(toFolder);
993 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:) 988 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:)
994 withObject:toFolder]; 989 withObject:toFolder];
995 BookmarkBarFolderController* folderController = [bar_ folderController]; 990 BookmarkBarFolderController* folderController = [bar_ folderController];
996 EXPECT_TRUE(folderController); 991 EXPECT_TRUE(folderController);
997 NSWindow* toWindow = [folderController window]; 992 NSWindow* toWindow = [folderController window];
998 EXPECT_TRUE(toWindow); 993 EXPECT_TRUE(toWindow);
999 // Drag a folder button to one of its children. 994 // Drag a folder button to one of its children.
1000 BookmarkButton* draggedButton = [bar_ buttonWithTitleEqualTo:@"4f"]; 995 BookmarkButton* draggedButton = [bar_ buttonWithTitleEqualTo:@"4f"];
1001 ASSERT_TRUE(draggedButton); 996 ASSERT_TRUE(draggedButton);
1002 BookmarkButton* targetButton = 997 BookmarkButton* targetButton =
1003 [folderController buttonWithTitleEqualTo:@"4f3f"]; 998 [folderController buttonWithTitleEqualTo:@"4f3f"];
1004 ASSERT_TRUE(targetButton); 999 ASSERT_TRUE(targetButton);
1005 [folderController dragButton:draggedButton 1000 [folderController dragButton:draggedButton
1006 to:[targetButton top] 1001 to:[targetButton top]
1007 copy:NO]; 1002 copy:NO];
1008 // The model should not have changed. 1003 // The model should not have changed.
1009 EXPECT_EQ(model_string, BookmarkModelTestUtils::ModelStringFromNode(root)); 1004 EXPECT_EQ(model_string, test::ModelStringFromNode(root));
1010 1005
1011 // Check button spacing. 1006 // Check button spacing.
1012 [folderController validateMenuSpacing]; 1007 [folderController validateMenuSpacing];
1013 } 1008 }
1014 1009
1015 TEST_F(BookmarkBarFolderControllerMenuTest, DragMoveChildToParent) { 1010 TEST_F(BookmarkBarFolderControllerMenuTest, DragMoveChildToParent) {
1016 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 1011 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
1017 const BookmarkNode* root = model->bookmark_bar_node(); 1012 const BookmarkNode* root = model->bookmark_bar_node();
1018 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b " 1013 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b "
1019 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ 4f2f1b " 1014 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f:[ 4f2f1b "
1020 "4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b "); 1015 "4f2f2b 4f2f3b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b ");
1021 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 1016 test::AddNodesFromModelString(model, root, model_string);
1022 1017
1023 // Validate initial model. 1018 // Validate initial model.
1024 std::string actualModelString = 1019 std::string actualModelString = test::ModelStringFromNode(root);
1025 BookmarkModelTestUtils::ModelStringFromNode(root);
1026 EXPECT_EQ(model_string, actualModelString); 1020 EXPECT_EQ(model_string, actualModelString);
1027 1021
1028 // Pop up a folder menu and a subfolder menu. 1022 // Pop up a folder menu and a subfolder menu.
1029 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"4f"]; 1023 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"4f"];
1030 ASSERT_TRUE(toFolder); 1024 ASSERT_TRUE(toFolder);
1031 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:) 1025 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:)
1032 withObject:toFolder]; 1026 withObject:toFolder];
1033 BookmarkBarFolderController* folderController = [bar_ folderController]; 1027 BookmarkBarFolderController* folderController = [bar_ folderController];
1034 EXPECT_TRUE(folderController); 1028 EXPECT_TRUE(folderController);
1035 BookmarkButton* toSubfolder = 1029 BookmarkButton* toSubfolder =
(...skipping 12 matching lines...) Expand all
1048 BookmarkButton* targetButton = 1042 BookmarkButton* targetButton =
1049 [folderController buttonWithTitleEqualTo:@"4f2f"]; 1043 [folderController buttonWithTitleEqualTo:@"4f2f"];
1050 ASSERT_TRUE(targetButton); 1044 ASSERT_TRUE(targetButton);
1051 [folderController dragButton:draggedButton 1045 [folderController dragButton:draggedButton
1052 to:[targetButton top] 1046 to:[targetButton top]
1053 copy:NO]; 1047 copy:NO];
1054 // The button should have landed above "4f2f". 1048 // The button should have landed above "4f2f".
1055 const std::string expected_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b " 1049 const std::string expected_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b "
1056 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f3b 4f2f:[ " 1050 "2f2f3b ] 2f3b ] 3b 4f:[ 4f1f:[ 4f1f1b 4f1f2b 4f1f3b ] 4f2f3b 4f2f:[ "
1057 "4f2f1b 4f2f2b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b "); 1051 "4f2f1b 4f2f2b ] 4f3f:[ 4f3f1b 4f3f2b 4f3f3b ] ] 5b ");
1058 EXPECT_EQ(expected_string, BookmarkModelTestUtils::ModelStringFromNode(root)); 1052 EXPECT_EQ(expected_string, test::ModelStringFromNode(root));
1059 1053
1060 // Check button spacing. 1054 // Check button spacing.
1061 [folderController validateMenuSpacing]; 1055 [folderController validateMenuSpacing];
1062 // The window should not have gone away. 1056 // The window should not have gone away.
1063 EXPECT_TRUE([bar_ folderController]); 1057 EXPECT_TRUE([bar_ folderController]);
1064 // The subfolder should have gone away. 1058 // The subfolder should have gone away.
1065 EXPECT_FALSE([folderController folderController]); 1059 EXPECT_FALSE([folderController folderController]);
1066 } 1060 }
1067 1061
1068 TEST_F(BookmarkBarFolderControllerMenuTest, DragWindowResizing) { 1062 TEST_F(BookmarkBarFolderControllerMenuTest, DragWindowResizing) {
1069 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 1063 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
1070 const BookmarkNode* root = model->bookmark_bar_node(); 1064 const BookmarkNode* root = model->bookmark_bar_node();
1071 const std::string 1065 const std::string model_string(
1072 model_string("a b:[ b1 b2 b3 ] reallyReallyLongBookmarkName c "); 1066 "a b:[ b1 b2 b3 ] reallyReallyLongBookmarkName c ");
1073 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 1067 test::AddNodesFromModelString(model, root, model_string);
1074 1068
1075 // Validate initial model. 1069 // Validate initial model.
1076 std::string actualModelString = 1070 std::string actualModelString = test::ModelStringFromNode(root);
1077 BookmarkModelTestUtils::ModelStringFromNode(root);
1078 EXPECT_EQ(model_string, actualModelString); 1071 EXPECT_EQ(model_string, actualModelString);
1079 1072
1080 // Pop up a folder menu. 1073 // Pop up a folder menu.
1081 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"b"]; 1074 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"b"];
1082 ASSERT_TRUE(toFolder); 1075 ASSERT_TRUE(toFolder);
1083 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:) 1076 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:)
1084 withObject:toFolder]; 1077 withObject:toFolder];
1085 BookmarkBarFolderController* folderController = [bar_ folderController]; 1078 BookmarkBarFolderController* folderController = [bar_ folderController];
1086 EXPECT_TRUE(folderController); 1079 EXPECT_TRUE(folderController);
1087 NSWindow* toWindow = [folderController window]; 1080 NSWindow* toWindow = [folderController window];
1088 EXPECT_TRUE(toWindow); 1081 EXPECT_TRUE(toWindow);
1089 CGFloat oldWidth = NSWidth([toWindow frame]); 1082 CGFloat oldWidth = NSWidth([toWindow frame]);
1090 // Drag the bookmark with a long name to the folder. 1083 // Drag the bookmark with a long name to the folder.
1091 BookmarkButton* draggedButton = 1084 BookmarkButton* draggedButton =
1092 [bar_ buttonWithTitleEqualTo:@"reallyReallyLongBookmarkName"]; 1085 [bar_ buttonWithTitleEqualTo:@"reallyReallyLongBookmarkName"];
1093 ASSERT_TRUE(draggedButton); 1086 ASSERT_TRUE(draggedButton);
1094 BookmarkButton* targetButton = 1087 BookmarkButton* targetButton =
1095 [folderController buttonWithTitleEqualTo:@"b1"]; 1088 [folderController buttonWithTitleEqualTo:@"b1"];
1096 ASSERT_TRUE(targetButton); 1089 ASSERT_TRUE(targetButton);
1097 [folderController dragButton:draggedButton 1090 [folderController dragButton:draggedButton
1098 to:[targetButton center] 1091 to:[targetButton center]
1099 copy:NO]; 1092 copy:NO];
1100 // Verify the model change. 1093 // Verify the model change.
1101 const std::string 1094 const std::string expected_string(
1102 expected_string("a b:[ b1 reallyReallyLongBookmarkName b2 b3 ] c "); 1095 "a b:[ b1 reallyReallyLongBookmarkName b2 b3 ] c ");
1103 EXPECT_EQ(expected_string, BookmarkModelTestUtils::ModelStringFromNode(root)); 1096 EXPECT_EQ(expected_string, test::ModelStringFromNode(root));
1104 // Verify the window grew. Just test a reasonable width gain. 1097 // Verify the window grew. Just test a reasonable width gain.
1105 CGFloat newWidth = NSWidth([toWindow frame]); 1098 CGFloat newWidth = NSWidth([toWindow frame]);
1106 EXPECT_LT(oldWidth + 30.0, newWidth); 1099 EXPECT_LT(oldWidth + 30.0, newWidth);
1107 } 1100 }
1108 1101
1109 TEST_F(BookmarkBarFolderControllerMenuTest, MoveRemoveAddButtons) { 1102 TEST_F(BookmarkBarFolderControllerMenuTest, MoveRemoveAddButtons) {
1110 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 1103 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
1111 const BookmarkNode* root = model->bookmark_bar_node(); 1104 const BookmarkNode* root = model->bookmark_bar_node();
1112 const std::string model_string("1b 2f:[ 2f1b 2f2b 2f3b ] 3b 4b "); 1105 const std::string model_string("1b 2f:[ 2f1b 2f2b 2f3b ] 3b 4b ");
1113 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 1106 test::AddNodesFromModelString(model, root, model_string);
1114 1107
1115 // Validate initial model. 1108 // Validate initial model.
1116 std::string actualModelString = 1109 std::string actualModelString = test::ModelStringFromNode(root);
1117 BookmarkModelTestUtils::ModelStringFromNode(root);
1118 EXPECT_EQ(model_string, actualModelString); 1110 EXPECT_EQ(model_string, actualModelString);
1119 1111
1120 // Pop up a folder menu. 1112 // Pop up a folder menu.
1121 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"2f"]; 1113 BookmarkButton* toFolder = [bar_ buttonWithTitleEqualTo:@"2f"];
1122 ASSERT_TRUE(toFolder); 1114 ASSERT_TRUE(toFolder);
1123 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:) 1115 [[toFolder target] performSelector:@selector(openBookmarkFolderFromButton:)
1124 withObject:toFolder]; 1116 withObject:toFolder];
1125 BookmarkBarFolderController* folder = [bar_ folderController]; 1117 BookmarkBarFolderController* folder = [bar_ folderController];
1126 EXPECT_TRUE(folder); 1118 EXPECT_TRUE(folder);
1127 1119
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
1167 EXPECT_EQ(oldDisplayedButtons, [buttons count]); 1159 EXPECT_EQ(oldDisplayedButtons, [buttons count]);
1168 1160
1169 // Check button spacing. 1161 // Check button spacing.
1170 [folder validateMenuSpacing]; 1162 [folder validateMenuSpacing];
1171 } 1163 }
1172 1164
1173 TEST_F(BookmarkBarFolderControllerMenuTest, ControllerForNode) { 1165 TEST_F(BookmarkBarFolderControllerMenuTest, ControllerForNode) {
1174 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 1166 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
1175 const BookmarkNode* root = model->bookmark_bar_node(); 1167 const BookmarkNode* root = model->bookmark_bar_node();
1176 const std::string model_string("1b 2f:[ 2f1b 2f2b ] 3b "); 1168 const std::string model_string("1b 2f:[ 2f1b 2f2b ] 3b ");
1177 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 1169 test::AddNodesFromModelString(model, root, model_string);
1178 1170
1179 // Validate initial model. 1171 // Validate initial model.
1180 std::string actualModelString = 1172 std::string actualModelString = test::ModelStringFromNode(root);
1181 BookmarkModelTestUtils::ModelStringFromNode(root);
1182 EXPECT_EQ(model_string, actualModelString); 1173 EXPECT_EQ(model_string, actualModelString);
1183 1174
1184 // Find the main bar controller. 1175 // Find the main bar controller.
1185 const void* expectedController = bar_; 1176 const void* expectedController = bar_;
1186 const void* actualController = [bar_ controllerForNode:root]; 1177 const void* actualController = [bar_ controllerForNode:root];
1187 EXPECT_EQ(expectedController, actualController); 1178 EXPECT_EQ(expectedController, actualController);
1188 1179
1189 // Pop up the folder menu. 1180 // Pop up the folder menu.
1190 BookmarkButton* targetFolder = [bar_ buttonWithTitleEqualTo:@"2f"]; 1181 BookmarkButton* targetFolder = [bar_ buttonWithTitleEqualTo:@"2f"];
1191 ASSERT_TRUE(targetFolder); 1182 ASSERT_TRUE(targetFolder);
(...skipping 11 matching lines...) Expand all
1203 1194
1204 // Find the folder controller from the bar. 1195 // Find the folder controller from the bar.
1205 actualController = [folder controllerForNode:targetNode]; 1196 actualController = [folder controllerForNode:targetNode];
1206 EXPECT_EQ(expectedController, actualController); 1197 EXPECT_EQ(expectedController, actualController);
1207 } 1198 }
1208 1199
1209 TEST_F(BookmarkBarFolderControllerMenuTest, MenuSizingAndScrollArrows) { 1200 TEST_F(BookmarkBarFolderControllerMenuTest, MenuSizingAndScrollArrows) {
1210 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 1201 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
1211 const BookmarkNode* root = model->bookmark_bar_node(); 1202 const BookmarkNode* root = model->bookmark_bar_node();
1212 const std::string model_string("1b 2b 3b "); 1203 const std::string model_string("1b 2b 3b ");
1213 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 1204 test::AddNodesFromModelString(model, root, model_string);
1214 1205
1215 // Validate initial model. 1206 // Validate initial model.
1216 std::string actualModelString = 1207 std::string actualModelString = test::ModelStringFromNode(root);
1217 BookmarkModelTestUtils::ModelStringFromNode(root);
1218 EXPECT_EQ(model_string, actualModelString); 1208 EXPECT_EQ(model_string, actualModelString);
1219 1209
1220 const BookmarkNode* parent = model->bookmark_bar_node(); 1210 const BookmarkNode* parent = model->bookmark_bar_node();
1221 const BookmarkNode* folder = model->AddFolder(parent, 1211 const BookmarkNode* folder = model->AddFolder(parent,
1222 parent->child_count(), 1212 parent->child_count(),
1223 ASCIIToUTF16("BIG")); 1213 ASCIIToUTF16("BIG"));
1224 1214
1225 // Pop open the new folder window and verify it has one (empty) item. 1215 // Pop open the new folder window and verify it has one (empty) item.
1226 BookmarkButton* button = [bar_ buttonWithTitleEqualTo:@"BIG"]; 1216 BookmarkButton* button = [bar_ buttonWithTitleEqualTo:@"BIG"];
1227 [[button target] performSelector:@selector(openBookmarkFolderFromButton:) 1217 [[button target] performSelector:@selector(openBookmarkFolderFromButton:)
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
1368 return dragDataNodes; 1358 return dragDataNodes;
1369 } 1359 }
1370 1360
1371 @end 1361 @end
1372 1362
1373 TEST_F(BookmarkBarFolderControllerMenuTest, DragBookmarkData) { 1363 TEST_F(BookmarkBarFolderControllerMenuTest, DragBookmarkData) {
1374 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 1364 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
1375 const BookmarkNode* root = model->bookmark_bar_node(); 1365 const BookmarkNode* root = model->bookmark_bar_node();
1376 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b 2f2f3b ] " 1366 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b 2f2f3b ] "
1377 "2f3b ] 3b 4b "); 1367 "2f3b ] 3b 4b ");
1378 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 1368 test::AddNodesFromModelString(model, root, model_string);
1379 const BookmarkNode* other = model->other_node(); 1369 const BookmarkNode* other = model->other_node();
1380 const std::string other_string("O1b O2b O3f:[ O3f1b O3f2f ] " 1370 const std::string other_string("O1b O2b O3f:[ O3f1b O3f2f ] "
1381 "O4f:[ O4f1b O4f2f ] 05b "); 1371 "O4f:[ O4f1b O4f2f ] 05b ");
1382 BookmarkModelTestUtils::AddNodesFromModelString(model, other, other_string); 1372 test::AddNodesFromModelString(model, other, other_string);
1383 1373
1384 // Validate initial model. 1374 // Validate initial model.
1385 std::string actual = BookmarkModelTestUtils::ModelStringFromNode(root); 1375 std::string actual = test::ModelStringFromNode(root);
1386 EXPECT_EQ(model_string, actual); 1376 EXPECT_EQ(model_string, actual);
1387 actual = BookmarkModelTestUtils::ModelStringFromNode(other); 1377 actual = test::ModelStringFromNode(other);
1388 EXPECT_EQ(other_string, actual); 1378 EXPECT_EQ(other_string, actual);
1389 1379
1390 // Pop open a folder. 1380 // Pop open a folder.
1391 BookmarkButton* button = [bar_ buttonWithTitleEqualTo:@"2f"]; 1381 BookmarkButton* button = [bar_ buttonWithTitleEqualTo:@"2f"];
1392 base::scoped_nsobject<BookmarkBarFolderControllerDragData> folderController; 1382 base::scoped_nsobject<BookmarkBarFolderControllerDragData> folderController;
1393 folderController.reset([[BookmarkBarFolderControllerDragData alloc] 1383 folderController.reset([[BookmarkBarFolderControllerDragData alloc]
1394 initWithParentButton:button 1384 initWithParentButton:button
1395 parentController:nil 1385 parentController:nil
1396 barController:bar_ 1386 barController:bar_
1397 profile:profile()]); 1387 profile:profile()]);
1398 BookmarkButton* targetButton = 1388 BookmarkButton* targetButton =
1399 [folderController buttonWithTitleEqualTo:@"2f1b"]; 1389 [folderController buttonWithTitleEqualTo:@"2f1b"];
1400 ASSERT_TRUE(targetButton); 1390 ASSERT_TRUE(targetButton);
1401 1391
1402 // Gen up some dragging data. 1392 // Gen up some dragging data.
1403 const BookmarkNode* newNode = other->GetChild(2); 1393 const BookmarkNode* newNode = other->GetChild(2);
1404 [folderController setDragDataNode:newNode]; 1394 [folderController setDragDataNode:newNode];
1405 base::scoped_nsobject<FakedDragInfo> dragInfo([[FakedDragInfo alloc] init]); 1395 base::scoped_nsobject<FakedDragInfo> dragInfo([[FakedDragInfo alloc] init]);
1406 [dragInfo setDropLocation:[targetButton top]]; 1396 [dragInfo setDropLocation:[targetButton top]];
1407 [folderController dragBookmarkData:(id<NSDraggingInfo>)dragInfo.get()]; 1397 [folderController dragBookmarkData:(id<NSDraggingInfo>)dragInfo.get()];
1408 1398
1409 // Verify the model. 1399 // Verify the model.
1410 const std::string expected("1b 2f:[ O3f:[ O3f1b O3f2f ] 2f1b 2f2f:[ 2f2f1b " 1400 const std::string expected("1b 2f:[ O3f:[ O3f1b O3f2f ] 2f1b 2f2f:[ 2f2f1b "
1411 "2f2f2b 2f2f3b ] 2f3b ] 3b 4b "); 1401 "2f2f2b 2f2f3b ] 2f3b ] 3b 4b ");
1412 actual = BookmarkModelTestUtils::ModelStringFromNode(root); 1402 actual = test::ModelStringFromNode(root);
1413 EXPECT_EQ(expected, actual); 1403 EXPECT_EQ(expected, actual);
1414 1404
1415 // Now drag over a folder button. 1405 // Now drag over a folder button.
1416 targetButton = [folderController buttonWithTitleEqualTo:@"2f2f"]; 1406 targetButton = [folderController buttonWithTitleEqualTo:@"2f2f"];
1417 ASSERT_TRUE(targetButton); 1407 ASSERT_TRUE(targetButton);
1418 newNode = other->GetChild(2); // Should be O4f. 1408 newNode = other->GetChild(2); // Should be O4f.
1419 EXPECT_EQ(newNode->GetTitle(), ASCIIToUTF16("O4f")); 1409 EXPECT_EQ(newNode->GetTitle(), ASCIIToUTF16("O4f"));
1420 [folderController setDragDataNode:newNode]; 1410 [folderController setDragDataNode:newNode];
1421 [dragInfo setDropLocation:[targetButton center]]; 1411 [dragInfo setDropLocation:[targetButton center]];
1422 [folderController dragBookmarkData:(id<NSDraggingInfo>)dragInfo.get()]; 1412 [folderController dragBookmarkData:(id<NSDraggingInfo>)dragInfo.get()];
1423 1413
1424 // Verify the model. 1414 // Verify the model.
1425 const std::string expectedA("1b 2f:[ O3f:[ O3f1b O3f2f ] 2f1b 2f2f:[ " 1415 const std::string expectedA("1b 2f:[ O3f:[ O3f1b O3f2f ] 2f1b 2f2f:[ "
1426 "2f2f1b 2f2f2b 2f2f3b O4f:[ O4f1b O4f2f ] ] " 1416 "2f2f1b 2f2f2b 2f2f3b O4f:[ O4f1b O4f2f ] ] "
1427 "2f3b ] 3b 4b "); 1417 "2f3b ] 3b 4b ");
1428 actual = BookmarkModelTestUtils::ModelStringFromNode(root); 1418 actual = test::ModelStringFromNode(root);
1429 EXPECT_EQ(expectedA, actual); 1419 EXPECT_EQ(expectedA, actual);
1430 1420
1431 // Check button spacing. 1421 // Check button spacing.
1432 [folderController validateMenuSpacing]; 1422 [folderController validateMenuSpacing];
1433 } 1423 }
1434 1424
1435 TEST_F(BookmarkBarFolderControllerMenuTest, DragBookmarkDataToTrash) { 1425 TEST_F(BookmarkBarFolderControllerMenuTest, DragBookmarkDataToTrash) {
1436 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 1426 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
1437 const BookmarkNode* root = model->bookmark_bar_node(); 1427 const BookmarkNode* root = model->bookmark_bar_node();
1438 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b 2f2f3b ] " 1428 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b 2f2f3b ] "
1439 "2f3b ] 3b 4b "); 1429 "2f3b ] 3b 4b ");
1440 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 1430 test::AddNodesFromModelString(model, root, model_string);
1441 1431
1442 // Validate initial model. 1432 // Validate initial model.
1443 std::string actual = BookmarkModelTestUtils::ModelStringFromNode(root); 1433 std::string actual = test::ModelStringFromNode(root);
1444 EXPECT_EQ(model_string, actual); 1434 EXPECT_EQ(model_string, actual);
1445 1435
1446 const BookmarkNode* folderNode = root->GetChild(1); 1436 const BookmarkNode* folderNode = root->GetChild(1);
1447 int oldFolderChildCount = folderNode->child_count(); 1437 int oldFolderChildCount = folderNode->child_count();
1448 1438
1449 // Pop open a folder. 1439 // Pop open a folder.
1450 BookmarkButton* button = [bar_ buttonWithTitleEqualTo:@"2f"]; 1440 BookmarkButton* button = [bar_ buttonWithTitleEqualTo:@"2f"];
1451 base::scoped_nsobject<BookmarkBarFolderControllerDragData> folderController; 1441 base::scoped_nsobject<BookmarkBarFolderControllerDragData> folderController;
1452 folderController.reset([[BookmarkBarFolderControllerDragData alloc] 1442 folderController.reset([[BookmarkBarFolderControllerDragData alloc]
1453 initWithParentButton:button 1443 initWithParentButton:button
1454 parentController:nil 1444 parentController:nil
1455 barController:bar_ 1445 barController:bar_
1456 profile:profile()]); 1446 profile:profile()]);
1457 1447
1458 // Drag a button to the trash. 1448 // Drag a button to the trash.
1459 BookmarkButton* buttonToDelete = 1449 BookmarkButton* buttonToDelete =
1460 [folderController buttonWithTitleEqualTo:@"2f1b"]; 1450 [folderController buttonWithTitleEqualTo:@"2f1b"];
1461 ASSERT_TRUE(buttonToDelete); 1451 ASSERT_TRUE(buttonToDelete);
1462 EXPECT_TRUE([folderController canDragBookmarkButtonToTrash:buttonToDelete]); 1452 EXPECT_TRUE([folderController canDragBookmarkButtonToTrash:buttonToDelete]);
1463 [folderController didDragBookmarkToTrash:buttonToDelete]; 1453 [folderController didDragBookmarkToTrash:buttonToDelete];
1464 1454
1465 // There should be one less button in the folder. 1455 // There should be one less button in the folder.
1466 int newFolderChildCount = folderNode->child_count(); 1456 int newFolderChildCount = folderNode->child_count();
1467 EXPECT_EQ(oldFolderChildCount - 1, newFolderChildCount); 1457 EXPECT_EQ(oldFolderChildCount - 1, newFolderChildCount);
1468 // Verify the model. 1458 // Verify the model.
1469 const std::string expected("1b 2f:[ 2f2f:[ 2f2f1b 2f2f2b 2f2f3b ] " 1459 const std::string expected("1b 2f:[ 2f2f:[ 2f2f1b 2f2f2b 2f2f3b ] "
1470 "2f3b ] 3b 4b "); 1460 "2f3b ] 3b 4b ");
1471 actual = BookmarkModelTestUtils::ModelStringFromNode(root); 1461 actual = test::ModelStringFromNode(root);
1472 EXPECT_EQ(expected, actual); 1462 EXPECT_EQ(expected, actual);
1473 1463
1474 // Check button spacing. 1464 // Check button spacing.
1475 [folderController validateMenuSpacing]; 1465 [folderController validateMenuSpacing];
1476 } 1466 }
1477 1467
1478 TEST_F(BookmarkBarFolderControllerMenuTest, AddURLs) { 1468 TEST_F(BookmarkBarFolderControllerMenuTest, AddURLs) {
1479 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 1469 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
1480 const BookmarkNode* root = model->bookmark_bar_node(); 1470 const BookmarkNode* root = model->bookmark_bar_node();
1481 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b 2f2f3b ] " 1471 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b 2f2f3b ] "
1482 "2f3b ] 3b 4b "); 1472 "2f3b ] 3b 4b ");
1483 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 1473 test::AddNodesFromModelString(model, root, model_string);
1484 1474
1485 // Validate initial model. 1475 // Validate initial model.
1486 std::string actual = BookmarkModelTestUtils::ModelStringFromNode(root); 1476 std::string actual = test::ModelStringFromNode(root);
1487 EXPECT_EQ(model_string, actual); 1477 EXPECT_EQ(model_string, actual);
1488 1478
1489 // Pop open a folder. 1479 // Pop open a folder.
1490 BookmarkButton* button = [bar_ buttonWithTitleEqualTo:@"2f"]; 1480 BookmarkButton* button = [bar_ buttonWithTitleEqualTo:@"2f"];
1491 [[button target] performSelector:@selector(openBookmarkFolderFromButton:) 1481 [[button target] performSelector:@selector(openBookmarkFolderFromButton:)
1492 withObject:button]; 1482 withObject:button];
1493 BookmarkBarFolderController* folderController = [bar_ folderController]; 1483 BookmarkBarFolderController* folderController = [bar_ folderController];
1494 EXPECT_TRUE(folderController); 1484 EXPECT_TRUE(folderController);
1495 NSArray* buttons = [folderController buttons]; 1485 NSArray* buttons = [folderController buttons];
1496 EXPECT_TRUE(buttons); 1486 EXPECT_TRUE(buttons);
1497 1487
1498 // Remember how many buttons are showing. 1488 // Remember how many buttons are showing.
1499 int oldDisplayedButtons = [buttons count]; 1489 int oldDisplayedButtons = [buttons count];
1500 1490
1501 BookmarkButton* targetButton = 1491 BookmarkButton* targetButton =
1502 [folderController buttonWithTitleEqualTo:@"2f1b"]; 1492 [folderController buttonWithTitleEqualTo:@"2f1b"];
1503 ASSERT_TRUE(targetButton); 1493 ASSERT_TRUE(targetButton);
1504 1494
1505 NSArray* urls = [NSArray arrayWithObjects: @"http://www.a.com/", 1495 NSArray* urls = [NSArray arrayWithObjects: @"http://www.a.com/",
1506 @"http://www.b.com/", nil]; 1496 @"http://www.b.com/", nil];
1507 NSArray* titles = [NSArray arrayWithObjects: @"SiteA", @"SiteB", nil]; 1497 NSArray* titles = [NSArray arrayWithObjects: @"SiteA", @"SiteB", nil];
1508 [folderController addURLs:urls withTitles:titles at:[targetButton top]]; 1498 [folderController addURLs:urls withTitles:titles at:[targetButton top]];
1509 1499
1510 // There should two more buttons in the folder. 1500 // There should two more buttons in the folder.
1511 int newDisplayedButtons = [buttons count]; 1501 int newDisplayedButtons = [buttons count];
1512 EXPECT_EQ(oldDisplayedButtons + 2, newDisplayedButtons); 1502 EXPECT_EQ(oldDisplayedButtons + 2, newDisplayedButtons);
1513 // Verify the model. 1503 // Verify the model.
1514 const std::string expected("1b 2f:[ SiteA SiteB 2f1b 2f2f:[ 2f2f1b 2f2f2b " 1504 const std::string expected("1b 2f:[ SiteA SiteB 2f1b 2f2f:[ 2f2f1b 2f2f2b "
1515 "2f2f3b ] 2f3b ] 3b 4b "); 1505 "2f2f3b ] 2f3b ] 3b 4b ");
1516 actual = BookmarkModelTestUtils::ModelStringFromNode(root); 1506 actual = test::ModelStringFromNode(root);
1517 EXPECT_EQ(expected, actual); 1507 EXPECT_EQ(expected, actual);
1518 1508
1519 // Check button spacing. 1509 // Check button spacing.
1520 [folderController validateMenuSpacing]; 1510 [folderController validateMenuSpacing];
1521 } 1511 }
1522 1512
1523 TEST_F(BookmarkBarFolderControllerMenuTest, DropPositionIndicator) { 1513 TEST_F(BookmarkBarFolderControllerMenuTest, DropPositionIndicator) {
1524 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 1514 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
1525 const BookmarkNode* root = model->bookmark_bar_node(); 1515 const BookmarkNode* root = model->bookmark_bar_node();
1526 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b 2f2f3b ] " 1516 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b 2f2f3b ] "
1527 "2f3b ] 3b 4b "); 1517 "2f3b ] 3b 4b ");
1528 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 1518 test::AddNodesFromModelString(model, root, model_string);
1529 1519
1530 // Validate initial model. 1520 // Validate initial model.
1531 std::string actual = BookmarkModelTestUtils::ModelStringFromNode(root); 1521 std::string actual = test::ModelStringFromNode(root);
1532 EXPECT_EQ(model_string, actual); 1522 EXPECT_EQ(model_string, actual);
1533 1523
1534 // Pop open the folder. 1524 // Pop open the folder.
1535 BookmarkButton* button = [bar_ buttonWithTitleEqualTo:@"2f"]; 1525 BookmarkButton* button = [bar_ buttonWithTitleEqualTo:@"2f"];
1536 [[button target] performSelector:@selector(openBookmarkFolderFromButton:) 1526 [[button target] performSelector:@selector(openBookmarkFolderFromButton:)
1537 withObject:button]; 1527 withObject:button];
1538 BookmarkBarFolderController* folder = [bar_ folderController]; 1528 BookmarkBarFolderController* folder = [bar_ folderController];
1539 EXPECT_TRUE(folder); 1529 EXPECT_TRUE(folder);
1540 1530
1541 // Test a series of points starting at the top of the folder. 1531 // Test a series of points starting at the top of the folder.
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
1577 resizeDelegate:resizeDelegate_.get()]); 1567 resizeDelegate:resizeDelegate_.get()]);
1578 InstallAndToggleBar(bar_.get()); 1568 InstallAndToggleBar(bar_.get());
1579 } 1569 }
1580 }; 1570 };
1581 1571
1582 TEST_F(BookmarkBarFolderControllerClosingTest, DeleteClosesFolder) { 1572 TEST_F(BookmarkBarFolderControllerClosingTest, DeleteClosesFolder) {
1583 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile()); 1573 BookmarkModel* model = BookmarkModelFactory::GetForProfile(profile());
1584 const BookmarkNode* root = model->bookmark_bar_node(); 1574 const BookmarkNode* root = model->bookmark_bar_node();
1585 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b ] " 1575 const std::string model_string("1b 2f:[ 2f1b 2f2f:[ 2f2f1b 2f2f2b ] "
1586 "2f3b ] 3b "); 1576 "2f3b ] 3b ");
1587 BookmarkModelTestUtils::AddNodesFromModelString(model, root, model_string); 1577 test::AddNodesFromModelString(model, root, model_string);
1588 1578
1589 // Validate initial model. 1579 // Validate initial model.
1590 std::string actualModelString = 1580 std::string actualModelString = test::ModelStringFromNode(root);
1591 BookmarkModelTestUtils::ModelStringFromNode(root);
1592 EXPECT_EQ(model_string, actualModelString); 1581 EXPECT_EQ(model_string, actualModelString);
1593 1582
1594 // Open the folder menu and submenu. 1583 // Open the folder menu and submenu.
1595 BookmarkButton* target = [bar_ buttonWithTitleEqualTo:@"2f"]; 1584 BookmarkButton* target = [bar_ buttonWithTitleEqualTo:@"2f"];
1596 ASSERT_TRUE(target); 1585 ASSERT_TRUE(target);
1597 [[target target] performSelector:@selector(openBookmarkFolderFromButton:) 1586 [[target target] performSelector:@selector(openBookmarkFolderFromButton:)
1598 withObject:target]; 1587 withObject:target];
1599 BookmarkBarFolderController* folder = [bar_ folderController]; 1588 BookmarkBarFolderController* folder = [bar_ folderController];
1600 EXPECT_TRUE(folder); 1589 EXPECT_TRUE(folder);
1601 BookmarkButton* subTarget = [folder buttonWithTitleEqualTo:@"2f2f"]; 1590 BookmarkButton* subTarget = [folder buttonWithTitleEqualTo:@"2f2f"];
1602 ASSERT_TRUE(subTarget); 1591 ASSERT_TRUE(subTarget);
1603 [[subTarget target] performSelector:@selector(openBookmarkFolderFromButton:) 1592 [[subTarget target] performSelector:@selector(openBookmarkFolderFromButton:)
1604 withObject:subTarget]; 1593 withObject:subTarget];
1605 BookmarkBarFolderController* subFolder = [folder folderController]; 1594 BookmarkBarFolderController* subFolder = [folder folderController];
1606 EXPECT_TRUE(subFolder); 1595 EXPECT_TRUE(subFolder);
1607 1596
1608 // Delete the folder node and verify the window closed down by looking 1597 // Delete the folder node and verify the window closed down by looking
1609 // for its controller again. 1598 // for its controller again.
1610 DeleteBookmark([folder parentButton], profile()); 1599 DeleteBookmark([folder parentButton], profile());
1611 EXPECT_FALSE([folder folderController]); 1600 EXPECT_FALSE([folder folderController]);
1612 } 1601 }
1613 1602
1614 // TODO(jrg): draggingEntered: and draggingExited: trigger timers so 1603 // TODO(jrg): draggingEntered: and draggingExited: trigger timers so
1615 // they are hard to test. Factor out "fire timers" into routines 1604 // they are hard to test. Factor out "fire timers" into routines
1616 // which can be overridden to fire immediately to make behavior 1605 // which can be overridden to fire immediately to make behavior
1617 // confirmable. 1606 // confirmable.
1618 // There is a similar problem with mouseEnteredButton: and 1607 // There is a similar problem with mouseEnteredButton: and
1619 // mouseExitedButton:. 1608 // mouseExitedButton:.
OLDNEW
« no previous file with comments | « chrome/browser/ui/cocoa/bookmarks/bookmark_bar_controller_unittest.mm ('k') | chrome/chrome_tests_unit.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698