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

Side by Side Diff: chrome/browser/cocoa/view_id_util_browsertest.mm

Issue 2878037: [Mac]Implement ViewID support. (third approach) (Closed) Base URL: http://src.chromium.org/git/chromium.git
Patch Set: Update according to review feedback. Created 10 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
OLDNEW
(Empty)
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "base/logging.h"
6 #include "base/utf_string_conversions.h"
7 #include "chrome/browser/bookmarks/bookmark_model.h"
8 #include "chrome/browser/browser.h"
9 #include "chrome/browser/browser_window.h"
10 #include "chrome/browser/cocoa/view_id_util.h"
11 #include "chrome/browser/download/download_shelf.h"
12 #include "chrome/browser/pref_service.h"
13 #include "chrome/common/pref_names.h"
14 #include "chrome/common/url_constants.h"
15 #include "chrome/test/in_process_browser_test.h"
16 #include "chrome/test/ui_test_utils.h"
17
18 // Basic sanity check of ViewID use on the mac.
19 class ViewIDTest : public InProcessBrowserTest {
20 public:
21 ViewIDTest() : root_window_(nil) {}
22
23 void CheckViewID(ViewID view_id, bool should_have) {
24 if (!root_window_)
25 root_window_ = browser()->window()->GetNativeHandle();
26
27 ASSERT_TRUE(root_window_);
28 NSView* view = view_id_util::GetView(root_window_, view_id);
29 EXPECT_EQ(should_have, !!view) << " Failed id=" << view_id;
30 }
31
32 void DoTest() {
33 // Make sure FindBar is created to test
34 // VIEW_ID_FIND_IN_PAGE_TEXT_FIELD and VIEW_ID_FIND_IN_PAGE.
35 browser()->ShowFindBar();
36
37 // Make sure docked devtools is created to test VIEW_ID_DEV_TOOLS_DOCKED
38 browser()->profile()->GetPrefs()->SetBoolean(prefs::kDevToolsOpenDocked,
39 true);
40 browser()->ToggleDevToolsWindow(DEVTOOLS_TOGGLE_ACTION_INSPECT);
41
42 // Make sure download shelf is created to test VIEW_ID_DOWNLOAD_SHELF
43 browser()->window()->GetDownloadShelf()->Show();
44
45 // Create a bookmark to test VIEW_ID_BOOKMARK_BAR_ELEMENT
46 BookmarkModel* bookmark_model = browser()->profile()->GetBookmarkModel();
47 if (bookmark_model) {
48 if (!bookmark_model->IsLoaded())
49 ui_test_utils::WaitForBookmarkModelToLoad(bookmark_model);
50
51 bookmark_model->SetURLStarred(GURL(chrome::kAboutBlankURL),
52 UTF8ToUTF16("about"), true);
53 }
54
55 for (int i = VIEW_ID_TOOLBAR; i < VIEW_ID_PREDEFINED_COUNT; ++i) {
56 // Extension shelf is being removed, http://crbug.com/30178.
57 if (i == VIEW_ID_DEV_EXTENSION_SHELF)
58 continue;
59
60 // Mac implementation does not support following ids yet.
61 if (i == VIEW_ID_STAR_BUTTON ||
62 i == VIEW_ID_PAGE_MENU ||
63 i == VIEW_ID_AUTOCOMPLETE ||
64 i == VIEW_ID_CONTENTS_SPLIT) {
65 continue;
66 }
67
68 CheckViewID(static_cast<ViewID>(i), true);
69 }
70
71 CheckViewID(VIEW_ID_TAB, true);
72 CheckViewID(VIEW_ID_TAB_STRIP, true);
73 CheckViewID(VIEW_ID_PREDEFINED_COUNT, false);
74 }
75
76 private:
77 NSWindow* root_window_;
78 };
79
80 IN_PROC_BROWSER_TEST_F(ViewIDTest, Basic) {
81 ASSERT_NO_FATAL_FAILURE(DoTest());
82 }
83
84 IN_PROC_BROWSER_TEST_F(ViewIDTest, Fullscreen) {
85 browser()->window()->SetFullscreen(true);
86 ASSERT_NO_FATAL_FAILURE(DoTest());
87 }
88
89 IN_PROC_BROWSER_TEST_F(ViewIDTest, Tab) {
90 CheckViewID(VIEW_ID_TAB_0, true);
91 CheckViewID(VIEW_ID_TAB_LAST, true);
92
93 // Open 9 new tabs.
94 for (int i = 1; i <= 9; ++i) {
95 CheckViewID(static_cast<ViewID>(VIEW_ID_TAB_0 + i), false);
96 browser()->OpenURL(GURL(chrome::kAboutBlankURL), GURL(),
97 NEW_BACKGROUND_TAB, PageTransition::TYPED);
98 CheckViewID(static_cast<ViewID>(VIEW_ID_TAB_0 + i), true);
99 // VIEW_ID_TAB_LAST should always be available.
100 CheckViewID(VIEW_ID_TAB_LAST, true);
101 }
102
103 // Open the 11th tab.
104 browser()->OpenURL(GURL(chrome::kAboutBlankURL), GURL(),
105 NEW_BACKGROUND_TAB, PageTransition::TYPED);
106 CheckViewID(VIEW_ID_TAB_LAST, true);
107 }
OLDNEW
« no previous file with comments | « chrome/browser/cocoa/view_id_util.mm ('k') | chrome/browser/renderer_host/render_widget_host_view_mac.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698