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

Side by Side Diff: chrome/browser/printing/print_preview_tab_controller_browsertest.cc

Issue 7790020: Cleanup: Convert PrintPreviewTabController to use TabContentsWrapper. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "chrome/browser/printing/print_preview_tab_controller.h" 5 #include "chrome/browser/printing/print_preview_tab_controller.h"
6 #include "chrome/browser/ui/browser.h" 6 #include "chrome/browser/ui/browser.h"
7 #include "chrome/browser/ui/browser_list.h" 7 #include "chrome/browser/ui/browser_list.h"
8 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h"
8 #include "chrome/common/url_constants.h" 9 #include "chrome/common/url_constants.h"
9 #include "chrome/test/base/in_process_browser_test.h" 10 #include "chrome/test/base/in_process_browser_test.h"
10 #include "chrome/test/base/ui_test_utils.h" 11 #include "chrome/test/base/ui_test_utils.h"
11 #include "content/browser/tab_contents/tab_contents.h" 12 #include "content/browser/tab_contents/tab_contents.h"
12 #include "googleurl/src/gurl.h" 13 #include "googleurl/src/gurl.h"
13 14
14 namespace { 15 namespace {
15 16
16 typedef InProcessBrowserTest PrintPreviewTabControllerBrowserTest; 17 typedef InProcessBrowserTest PrintPreviewTabControllerBrowserTest;
17 18
18 // Test to verify that when a preview tab navigates, we can create a new print 19 // Test to verify that when a preview tab navigates, we can create a new print
19 // preview tab for both initiator tab and new preview tab contents. 20 // preview tab for both initiator tab and new preview tab contents.
20 IN_PROC_BROWSER_TEST_F(PrintPreviewTabControllerBrowserTest, 21 IN_PROC_BROWSER_TEST_F(PrintPreviewTabControllerBrowserTest,
21 NavigateFromPrintPreviewTab) { 22 NavigateFromPrintPreviewTab) {
22 ASSERT_TRUE(browser()); 23 ASSERT_TRUE(browser());
23 BrowserList::SetLastActive(browser()); 24 BrowserList::SetLastActive(browser());
24 ASSERT_TRUE(BrowserList::GetLastActive()); 25 ASSERT_TRUE(BrowserList::GetLastActive());
25 26
26 // Lets start with one window with one tab. 27 // Lets start with one window with one tab.
27 EXPECT_EQ(1u, BrowserList::size()); 28 EXPECT_EQ(1u, BrowserList::size());
28 EXPECT_EQ(1, browser()->tab_count()); 29 EXPECT_EQ(1, browser()->tab_count());
29 30
30 // Create a reference to initiator tab contents. 31 // Create a reference to initiator tab contents.
31 TabContents* initiator_tab = browser()->GetSelectedTabContents(); 32 TabContentsWrapper* initiator_tab =
33 browser()->GetSelectedTabContentsWrapper();
32 ASSERT_TRUE(initiator_tab); 34 ASSERT_TRUE(initiator_tab);
33 35
34 scoped_refptr<printing::PrintPreviewTabController> 36 scoped_refptr<printing::PrintPreviewTabController>
35 tab_controller(new printing::PrintPreviewTabController()); 37 tab_controller(new printing::PrintPreviewTabController());
36 ASSERT_TRUE(tab_controller); 38 ASSERT_TRUE(tab_controller);
37 39
38 // Get the preview tab for initiator tab. 40 // Get the preview tab for initiator tab.
39 TabContents* preview_tab = 41 TabContentsWrapper* preview_tab =
40 tab_controller->GetOrCreatePreviewTab(initiator_tab); 42 tab_controller->GetOrCreatePreviewTab(initiator_tab);
41 43
42 // New print preview tab is created. Current focus is on preview tab. 44 // New print preview tab is created. Current focus is on preview tab.
43 EXPECT_EQ(2, browser()->tab_count()); 45 EXPECT_EQ(2, browser()->tab_count());
44 EXPECT_NE(initiator_tab, preview_tab); 46 EXPECT_NE(initiator_tab, preview_tab);
45 47
46 GURL url(chrome::kAboutBlankURL); 48 GURL url(chrome::kAboutBlankURL);
47 ui_test_utils::NavigateToURL(browser(), url); 49 ui_test_utils::NavigateToURL(browser(), url);
48 EXPECT_EQ(url, preview_tab->GetURL()); 50 EXPECT_EQ(url, preview_tab->tab_contents()->GetURL());
49 51
50 // Get the print preview tab for initiator tab. 52 // Get the print preview tab for initiator tab.
51 TabContents* new_preview_tab = 53 TabContentsWrapper* new_preview_tab =
52 tab_controller->GetOrCreatePreviewTab(initiator_tab); 54 tab_controller->GetOrCreatePreviewTab(initiator_tab);
53 55
54 // New preview tab is created. 56 // New preview tab is created.
55 EXPECT_EQ(3, browser()->tab_count()); 57 EXPECT_EQ(3, browser()->tab_count());
56 EXPECT_NE(new_preview_tab, preview_tab); 58 EXPECT_NE(new_preview_tab, preview_tab);
57 59
58 // Get the print preview tab for old preview tab. 60 // Get the print preview tab for old preview tab.
59 TabContents* newest_preview_tab = 61 TabContentsWrapper* newest_preview_tab =
60 tab_controller->GetOrCreatePreviewTab(preview_tab); 62 tab_controller->GetOrCreatePreviewTab(preview_tab);
61 63
62 // Newest preview tab is created and the previously created preview tab is not 64 // Newest preview tab is created and the previously created preview tab is not
63 // merely activated. 65 // merely activated.
64 EXPECT_EQ(4, browser()->tab_count()); 66 EXPECT_EQ(4, browser()->tab_count());
65 EXPECT_NE(newest_preview_tab, new_preview_tab); 67 EXPECT_NE(newest_preview_tab, new_preview_tab);
66 } 68 }
67 69
68 // Test to verify that when a initiator tab navigates, we can create a new 70 // Test to verify that when a initiator tab navigates, we can create a new
69 // preview tab for the new tab contents. But we cannot create a preview tab for 71 // preview tab for the new tab contents. But we cannot create a preview tab for
70 // the old preview tab. 72 // the old preview tab.
71 IN_PROC_BROWSER_TEST_F(PrintPreviewTabControllerBrowserTest, 73 IN_PROC_BROWSER_TEST_F(PrintPreviewTabControllerBrowserTest,
72 NavigateFromInitiatorTab) { 74 NavigateFromInitiatorTab) {
73 ASSERT_TRUE(browser()); 75 ASSERT_TRUE(browser());
74 BrowserList::SetLastActive(browser()); 76 BrowserList::SetLastActive(browser());
75 ASSERT_TRUE(BrowserList::GetLastActive()); 77 ASSERT_TRUE(BrowserList::GetLastActive());
76 78
77 // Lets start with one window with one tab. 79 // Lets start with one window with one tab.
78 EXPECT_EQ(1u, BrowserList::size()); 80 EXPECT_EQ(1u, BrowserList::size());
79 EXPECT_EQ(1, browser()->tab_count()); 81 EXPECT_EQ(1, browser()->tab_count());
80 82
81 // Create a reference to initiator tab contents. 83 // Create a reference to initiator tab contents.
82 TabContents* initiator_tab = browser()->GetSelectedTabContents(); 84 TabContentsWrapper* initiator_tab =
85 browser()->GetSelectedTabContentsWrapper();
83 ASSERT_TRUE(initiator_tab); 86 ASSERT_TRUE(initiator_tab);
84 87
85 scoped_refptr<printing::PrintPreviewTabController> 88 scoped_refptr<printing::PrintPreviewTabController>
86 tab_controller(new printing::PrintPreviewTabController()); 89 tab_controller(new printing::PrintPreviewTabController());
87 ASSERT_TRUE(tab_controller); 90 ASSERT_TRUE(tab_controller);
88 91
89 // Get the preview tab for initiator tab. 92 // Get the preview tab for initiator tab.
90 TabContents* preview_tab = 93 TabContentsWrapper* preview_tab =
91 tab_controller->GetOrCreatePreviewTab(initiator_tab); 94 tab_controller->GetOrCreatePreviewTab(initiator_tab);
92 95
93 // New print preview tab is created. Current focus is on preview tab. 96 // New print preview tab is created. Current focus is on preview tab.
94 EXPECT_EQ(2, browser()->tab_count()); 97 EXPECT_EQ(2, browser()->tab_count());
95 EXPECT_NE(initiator_tab, preview_tab); 98 EXPECT_NE(initiator_tab, preview_tab);
96 99
97 // Activate initiator tab. 100 // Activate initiator tab.
98 browser()->ActivateTabAt(0, true); 101 browser()->ActivateTabAt(0, true);
99 GURL url(chrome::kChromeUINewTabURL); 102 GURL url(chrome::kChromeUINewTabURL);
100 ui_test_utils::NavigateToURL(browser(), url); 103 ui_test_utils::NavigateToURL(browser(), url);
101 104
102 // Get the print preview tab for initiator tab. 105 // Get the print preview tab for initiator tab.
103 TabContents* new_preview_tab = 106 TabContentsWrapper* new_preview_tab =
104 tab_controller->GetOrCreatePreviewTab(initiator_tab); 107 tab_controller->GetOrCreatePreviewTab(initiator_tab);
105 108
106 // New preview tab is created. 109 // New preview tab is created.
107 EXPECT_EQ(3, browser()->tab_count()); 110 EXPECT_EQ(3, browser()->tab_count());
108 EXPECT_NE(new_preview_tab, preview_tab); 111 EXPECT_NE(new_preview_tab, preview_tab);
109 112
110 // Get the print preview tab for old preview tab. 113 // Get the print preview tab for old preview tab.
111 TabContents* newest_preview_tab = 114 TabContentsWrapper* newest_preview_tab =
112 tab_controller->GetOrCreatePreviewTab(preview_tab); 115 tab_controller->GetOrCreatePreviewTab(preview_tab);
113 116
114 // Make sure preview tab is not created for |preview_tab|. 117 // Make sure preview tab is not created for |preview_tab|.
115 EXPECT_EQ(3, browser()->tab_count()); 118 EXPECT_EQ(3, browser()->tab_count());
116 EXPECT_EQ(newest_preview_tab, preview_tab); 119 EXPECT_EQ(newest_preview_tab, preview_tab);
117 } 120 }
118 121
119 // Test to verify that even after reloading initiator tab and preview tab, 122 // Test to verify that even after reloading initiator tab and preview tab,
120 // their association exists. 123 // their association exists.
121 IN_PROC_BROWSER_TEST_F(PrintPreviewTabControllerBrowserTest, 124 IN_PROC_BROWSER_TEST_F(PrintPreviewTabControllerBrowserTest,
122 ReloadInitiatorTabAndPreviewTab) { 125 ReloadInitiatorTabAndPreviewTab) {
123 ASSERT_TRUE(browser()); 126 ASSERT_TRUE(browser());
124 BrowserList::SetLastActive(browser()); 127 BrowserList::SetLastActive(browser());
125 ASSERT_TRUE(BrowserList::GetLastActive()); 128 ASSERT_TRUE(BrowserList::GetLastActive());
126 129
127 // Lets start with one window with one tab. 130 // Lets start with one window with one tab.
128 EXPECT_EQ(1u, BrowserList::size()); 131 EXPECT_EQ(1u, BrowserList::size());
129 EXPECT_EQ(1, browser()->tab_count()); 132 EXPECT_EQ(1, browser()->tab_count());
130 133
131 // Create a reference to initiator tab contents. 134 // Create a reference to initiator tab contents.
132 TabContents* initiator_tab = browser()->GetSelectedTabContents(); 135 TabContentsWrapper* initiator_tab =
136 browser()->GetSelectedTabContentsWrapper();
133 ASSERT_TRUE(initiator_tab); 137 ASSERT_TRUE(initiator_tab);
134 138
135 scoped_refptr<printing::PrintPreviewTabController> 139 scoped_refptr<printing::PrintPreviewTabController>
136 tab_controller(new printing::PrintPreviewTabController()); 140 tab_controller(new printing::PrintPreviewTabController());
137 ASSERT_TRUE(tab_controller); 141 ASSERT_TRUE(tab_controller);
138 142
139 // Get the preview tab for initiator tab. 143 // Get the preview tab for initiator tab.
140 TabContents* preview_tab = 144 TabContentsWrapper* preview_tab =
141 tab_controller->GetOrCreatePreviewTab(initiator_tab); 145 tab_controller->GetOrCreatePreviewTab(initiator_tab);
142 146
143 // New print preview tab is created. Current focus is on preview tab. 147 // New print preview tab is created. Current focus is on preview tab.
144 EXPECT_EQ(2, browser()->tab_count()); 148 EXPECT_EQ(2, browser()->tab_count());
145 EXPECT_NE(initiator_tab, preview_tab); 149 EXPECT_NE(initiator_tab, preview_tab);
146 150
147 // Activate initiator tab and reload. 151 // Activate initiator tab and reload.
148 browser()->ActivateTabAt(0, true); 152 browser()->ActivateTabAt(0, true);
149 browser()->Reload(CURRENT_TAB); 153 browser()->Reload(CURRENT_TAB);
150 154
151 // Get the print preview tab for initiator tab. 155 // Get the print preview tab for initiator tab.
152 TabContents* new_preview_tab = 156 TabContentsWrapper* new_preview_tab =
153 tab_controller->GetOrCreatePreviewTab(initiator_tab); 157 tab_controller->GetOrCreatePreviewTab(initiator_tab);
154 158
155 // Old preview tab is activated. 159 // Old preview tab is activated.
156 EXPECT_EQ(2, browser()->tab_count()); 160 EXPECT_EQ(2, browser()->tab_count());
157 EXPECT_EQ(new_preview_tab, preview_tab); 161 EXPECT_EQ(new_preview_tab, preview_tab);
158 162
159 // Reload preview tab. 163 // Reload preview tab.
160 browser()->Reload(CURRENT_TAB); 164 browser()->Reload(CURRENT_TAB);
161 // Get the print preview tab for old preview tab. 165 // Get the print preview tab for old preview tab.
162 TabContents* newest_preview_tab = 166 TabContentsWrapper* newest_preview_tab =
163 tab_controller->GetOrCreatePreviewTab(preview_tab); 167 tab_controller->GetOrCreatePreviewTab(preview_tab);
164 168
165 // Make sure new preview tab is not created for |preview_tab|. 169 // Make sure new preview tab is not created for |preview_tab|.
166 EXPECT_EQ(2, browser()->tab_count()); 170 EXPECT_EQ(2, browser()->tab_count());
167 EXPECT_EQ(newest_preview_tab, preview_tab); 171 EXPECT_EQ(newest_preview_tab, preview_tab);
168 } 172 }
169 173
170 } // namespace 174 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698