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

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

Issue 10535045: TabContentsWrapper -> TabContents, for printing code. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 8 years, 6 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 "chrome/browser/printing/print_preview_tab_controller.h" 5 #include "chrome/browser/printing/print_preview_tab_controller.h"
6 #include "chrome/browser/printing/print_preview_unit_test_base.h" 6 #include "chrome/browser/printing/print_preview_unit_test_base.h"
7 #include "chrome/browser/printing/print_view_manager.h" 7 #include "chrome/browser/printing/print_view_manager.h"
8 #include "chrome/browser/ui/browser_list.h" 8 #include "chrome/browser/ui/browser_list.h"
9 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" 9 #include "chrome/browser/ui/tab_contents/tab_contents.h"
10 #include "chrome/browser/ui/tabs/tab_strip_model.h" 10 #include "chrome/browser/ui/tabs/tab_strip_model.h"
11 #include "chrome/browser/ui/webui/print_preview/print_preview_ui.h" 11 #include "chrome/browser/ui/webui/print_preview/print_preview_ui.h"
12 #include "content/public/browser/navigation_details.h" 12 #include "content/public/browser/navigation_details.h"
13 #include "content/public/browser/notification_service.h" 13 #include "content/public/browser/notification_service.h"
14 #include "content/public/browser/notification_types.h" 14 #include "content/public/browser/notification_types.h"
15 #include "content/public/common/url_constants.h" 15 #include "content/public/common/url_constants.h"
16 16
17 // Test crashes on Aura due to initiator tab's native view having no parent. 17 // Test crashes on Aura due to initiator tab's native view having no parent.
18 // http://crbug.com/104284 18 // http://crbug.com/104284
19 #if defined(USE_AURA) 19 #if defined(USE_AURA)
(...skipping 14 matching lines...) Expand all
34 34
35 // Create/Get a preview tab for initiator tab. 35 // Create/Get a preview tab for initiator tab.
36 TEST_F(PrintPreviewTabControllerUnitTest, MAYBE_GetOrCreatePreviewTab) { 36 TEST_F(PrintPreviewTabControllerUnitTest, MAYBE_GetOrCreatePreviewTab) {
37 // Lets start with one window with one tab. 37 // Lets start with one window with one tab.
38 EXPECT_EQ(1u, BrowserList::size()); 38 EXPECT_EQ(1u, BrowserList::size());
39 EXPECT_EQ(0, browser()->tab_count()); 39 EXPECT_EQ(0, browser()->tab_count());
40 browser()->NewTab(); 40 browser()->NewTab();
41 EXPECT_EQ(1, browser()->tab_count()); 41 EXPECT_EQ(1, browser()->tab_count());
42 42
43 // Create a reference to initiator tab contents. 43 // Create a reference to initiator tab contents.
44 TabContentsWrapper* initiator_tab = 44 TabContents* initiator_tab = browser()->GetActiveTabContents();
45 browser()->GetSelectedTabContentsWrapper();
46 45
47 printing::PrintPreviewTabController* tab_controller = 46 printing::PrintPreviewTabController* tab_controller =
48 printing::PrintPreviewTabController::GetInstance(); 47 printing::PrintPreviewTabController::GetInstance();
49 ASSERT_TRUE(tab_controller); 48 ASSERT_TRUE(tab_controller);
50 49
51 // Get the preview tab for initiator tab. 50 // Get the preview tab for initiator tab.
52 initiator_tab->print_view_manager()->PrintPreviewNow(); 51 initiator_tab->print_view_manager()->PrintPreviewNow();
53 TabContentsWrapper* preview_tab = 52 TabContents* preview_tab =
54 tab_controller->GetOrCreatePreviewTab(initiator_tab); 53 tab_controller->GetOrCreatePreviewTab(initiator_tab);
55 54
56 // New print preview tab is created. 55 // New print preview tab is created.
57 EXPECT_EQ(1, browser()->tab_count()); 56 EXPECT_EQ(1, browser()->tab_count());
58 EXPECT_NE(initiator_tab, preview_tab); 57 EXPECT_NE(initiator_tab, preview_tab);
59 58
60 // Get the print preview tab for initiator tab. 59 // Get the print preview tab for initiator tab.
61 TabContentsWrapper* new_preview_tab = 60 TabContents* new_preview_tab =
62 tab_controller->GetOrCreatePreviewTab(initiator_tab); 61 tab_controller->GetOrCreatePreviewTab(initiator_tab);
63 62
64 // Preview tab already exists. Tab count remains the same. 63 // Preview tab already exists. Tab count remains the same.
65 EXPECT_EQ(1, browser()->tab_count()); 64 EXPECT_EQ(1, browser()->tab_count());
66 65
67 // 1:1 relationship between initiator and preview tab. 66 // 1:1 relationship between initiator and preview tab.
68 EXPECT_EQ(new_preview_tab, preview_tab); 67 EXPECT_EQ(new_preview_tab, preview_tab);
69 } 68 }
70 69
71 // To show multiple print preview tabs exist in the same browser for 70 // To show multiple print preview tabs exist in the same browser for
72 // different initiator tabs. If preview tab already exists for an initiator, it 71 // different initiator tabs. If preview tab already exists for an initiator, it
73 // gets focused. 72 // gets focused.
74 TEST_F(PrintPreviewTabControllerUnitTest, MAYBE_MultiplePreviewTabs) { 73 TEST_F(PrintPreviewTabControllerUnitTest, MAYBE_MultiplePreviewTabs) {
75 // Lets start with one window and two tabs. 74 // Lets start with one window and two tabs.
76 EXPECT_EQ(1u, BrowserList::size()); 75 EXPECT_EQ(1u, BrowserList::size());
77 EXPECT_EQ(0, browser()->tab_count()); 76 EXPECT_EQ(0, browser()->tab_count());
78 77
79 browser()->NewTab(); 78 browser()->NewTab();
80 TabContentsWrapper* tab_contents_1 = 79 TabContents* tab_contents_1 = browser()->GetActiveTabContents();
81 browser()->GetSelectedTabContentsWrapper();
82 ASSERT_TRUE(tab_contents_1); 80 ASSERT_TRUE(tab_contents_1);
83 81
84 browser()->NewTab(); 82 browser()->NewTab();
85 TabContentsWrapper* tab_contents_2 = 83 TabContents* tab_contents_2 = browser()->GetActiveTabContents();
86 browser()->GetSelectedTabContentsWrapper();
87 ASSERT_TRUE(tab_contents_2); 84 ASSERT_TRUE(tab_contents_2);
88 EXPECT_EQ(2, browser()->tab_count()); 85 EXPECT_EQ(2, browser()->tab_count());
89 86
90 printing::PrintPreviewTabController* tab_controller = 87 printing::PrintPreviewTabController* tab_controller =
91 printing::PrintPreviewTabController::GetInstance(); 88 printing::PrintPreviewTabController::GetInstance();
92 ASSERT_TRUE(tab_controller); 89 ASSERT_TRUE(tab_controller);
93 90
94 // Create preview tab for |tab_contents_1| 91 // Create preview tab for |tab_contents_1|
95 tab_contents_1->print_view_manager()->PrintPreviewNow(); 92 tab_contents_1->print_view_manager()->PrintPreviewNow();
96 TabContentsWrapper* preview_tab_1 = 93 TabContents* preview_tab_1 =
97 tab_controller->GetOrCreatePreviewTab(tab_contents_1); 94 tab_controller->GetOrCreatePreviewTab(tab_contents_1);
98 95
99 EXPECT_NE(tab_contents_1, preview_tab_1); 96 EXPECT_NE(tab_contents_1, preview_tab_1);
100 EXPECT_EQ(2, browser()->tab_count()); 97 EXPECT_EQ(2, browser()->tab_count());
101 98
102 // Create preview tab for |tab_contents_2| 99 // Create preview tab for |tab_contents_2|
103 tab_contents_2->print_view_manager()->PrintPreviewNow(); 100 tab_contents_2->print_view_manager()->PrintPreviewNow();
104 TabContentsWrapper* preview_tab_2 = 101 TabContents* preview_tab_2 =
105 tab_controller->GetOrCreatePreviewTab(tab_contents_2); 102 tab_controller->GetOrCreatePreviewTab(tab_contents_2);
106 103
107 EXPECT_NE(tab_contents_2, preview_tab_2); 104 EXPECT_NE(tab_contents_2, preview_tab_2);
108 // 2 initiator tab and 2 preview tabs exist in the same browser. 105 // 2 initiator tab and 2 preview tabs exist in the same browser.
109 // The preview tabs are constrained in their respective initiator tabs. 106 // The preview tabs are constrained in their respective initiator tabs.
110 EXPECT_EQ(2, browser()->tab_count()); 107 EXPECT_EQ(2, browser()->tab_count());
111 108
112 TabStripModel* model = browser()->tab_strip_model(); 109 TabStripModel* model = browser()->tab_strip_model();
113 ASSERT_TRUE(model); 110 ASSERT_TRUE(model);
114 111
(...skipping 14 matching lines...) Expand all
129 126
130 // Clear the initiator tab details associated with preview tab. 127 // Clear the initiator tab details associated with preview tab.
131 TEST_F(PrintPreviewTabControllerUnitTest, MAYBE_ClearInitiatorTabDetails) { 128 TEST_F(PrintPreviewTabControllerUnitTest, MAYBE_ClearInitiatorTabDetails) {
132 // Lets start with one window with one tab. 129 // Lets start with one window with one tab.
133 EXPECT_EQ(1u, BrowserList::size()); 130 EXPECT_EQ(1u, BrowserList::size());
134 EXPECT_EQ(0, browser()->tab_count()); 131 EXPECT_EQ(0, browser()->tab_count());
135 browser()->NewTab(); 132 browser()->NewTab();
136 EXPECT_EQ(1, browser()->tab_count()); 133 EXPECT_EQ(1, browser()->tab_count());
137 134
138 // Create a reference to initiator tab contents. 135 // Create a reference to initiator tab contents.
139 TabContentsWrapper* initiator_tab = 136 TabContents* initiator_tab = browser()->GetActiveTabContents();
140 browser()->GetSelectedTabContentsWrapper();
141 137
142 printing::PrintPreviewTabController* tab_controller = 138 printing::PrintPreviewTabController* tab_controller =
143 printing::PrintPreviewTabController::GetInstance(); 139 printing::PrintPreviewTabController::GetInstance();
144 ASSERT_TRUE(tab_controller); 140 ASSERT_TRUE(tab_controller);
145 141
146 // Get the preview tab for initiator tab. 142 // Get the preview tab for initiator tab.
147 initiator_tab->print_view_manager()->PrintPreviewNow(); 143 initiator_tab->print_view_manager()->PrintPreviewNow();
148 TabContentsWrapper* preview_tab = 144 TabContents* preview_tab =
149 tab_controller->GetOrCreatePreviewTab(initiator_tab); 145 tab_controller->GetOrCreatePreviewTab(initiator_tab);
150 146
151 // 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.
152 EXPECT_EQ(1, browser()->tab_count()); 148 EXPECT_EQ(1, browser()->tab_count());
153 EXPECT_NE(initiator_tab, preview_tab); 149 EXPECT_NE(initiator_tab, preview_tab);
154 150
155 // Clear the initiator tab details associated with the preview tab. 151 // Clear the initiator tab details associated with the preview tab.
156 tab_controller->EraseInitiatorTabInfo(preview_tab); 152 tab_controller->EraseInitiatorTabInfo(preview_tab);
157 153
158 // Get the print preview tab for initiator tab. 154 // Get the print preview tab for initiator tab.
159 TabContentsWrapper* new_preview_tab = 155 TabContents* new_preview_tab =
160 tab_controller->GetOrCreatePreviewTab(initiator_tab); 156 tab_controller->GetOrCreatePreviewTab(initiator_tab);
161 157
162 // New preview tab is created. 158 // New preview tab is created.
163 EXPECT_EQ(1, browser()->tab_count()); 159 EXPECT_EQ(1, browser()->tab_count());
164 EXPECT_NE(new_preview_tab, preview_tab); 160 EXPECT_NE(new_preview_tab, preview_tab);
165 } 161 }
OLDNEW
« no previous file with comments | « chrome/browser/printing/print_preview_tab_controller_browsertest.cc ('k') | chrome/browser/printing/print_view_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698