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

Side by Side Diff: chrome/browser/permissions/permission_request_manager_unittest.cc

Issue 1686903002: [Abandoned] Rename PermissionBubbleManager to PermissionRequestManager. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: tests compile Created 4 years, 8 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
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 <stddef.h> 5 #include <stddef.h>
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/message_loop/message_loop.h" 9 #include "base/message_loop/message_loop.h"
10 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
11 #include "chrome/browser/ui/website_settings/mock_permission_bubble_factory.h" 11 #include "chrome/browser/ui/website_settings/mock_permission_bubble_factory.h"
12 #include "chrome/browser/ui/website_settings/mock_permission_bubble_request.h" 12 #include "chrome/browser/ui/website_settings/mock_permission_bubble_request.h"
13 #include "chrome/browser/ui/website_settings/permission_bubble_manager.h"
14 #include "chrome/browser/ui/website_settings/permission_bubble_request.h" 13 #include "chrome/browser/ui/website_settings/permission_bubble_request.h"
15 #include "chrome/common/chrome_switches.h" 14 #include "chrome/common/chrome_switches.h"
16 #include "chrome/test/base/chrome_render_view_host_test_harness.h" 15 #include "chrome/test/base/chrome_render_view_host_test_harness.h"
17 #include "testing/gtest/include/gtest/gtest.h" 16 #include "testing/gtest/include/gtest/gtest.h"
18 17
19 class PermissionBubbleManagerTest : public ChromeRenderViewHostTestHarness { 18 class PermissionRequestManagerTest : public ChromeRenderViewHostTestHarness {
20 public: 19 public:
21 PermissionBubbleManagerTest() 20 PermissionRequestManagerTest()
22 : ChromeRenderViewHostTestHarness(), 21 : ChromeRenderViewHostTestHarness(),
23 request1_("test1"), 22 request1_("test1"),
24 request2_("test2"), 23 request2_("test2"),
25 iframe_request_same_domain_("iframe", 24 iframe_request_same_domain_("iframe",
26 GURL("http://www.google.com/some/url")), 25 GURL("http://www.google.com/some/url")),
27 iframe_request_other_domain_("iframe", 26 iframe_request_other_domain_("iframe",
28 GURL("http://www.youtube.com")) {} 27 GURL("http://www.youtube.com")) {}
29 ~PermissionBubbleManagerTest() override {} 28 ~PermissionRequestManagerTest() override {}
30 29
31 void SetUp() override { 30 void SetUp() override {
32 ChromeRenderViewHostTestHarness::SetUp(); 31 ChromeRenderViewHostTestHarness::SetUp();
33 SetContents(CreateTestWebContents()); 32 SetContents(CreateTestWebContents());
34 NavigateAndCommit(GURL("http://www.google.com")); 33 NavigateAndCommit(GURL("http://www.google.com"));
35 34
36 manager_.reset(new PermissionBubbleManager(web_contents())); 35 manager_.reset(new PermissionRequestManager(web_contents()));
37 view_factory_.reset(new MockPermissionBubbleFactory(false, manager_.get())); 36 view_factory_.reset(new MockPermissionBubbleFactory(false, manager_.get()));
38 } 37 }
39 38
40 void TearDown() override { 39 void TearDown() override {
41 view_factory_.reset(); 40 view_factory_.reset();
42 manager_.reset(); 41 manager_.reset();
43 ChromeRenderViewHostTestHarness::TearDown(); 42 ChromeRenderViewHostTestHarness::TearDown();
44 } 43 }
45 44
46 void ToggleAccept(int index, bool value) { 45 void ToggleAccept(int index, bool value) {
47 manager_->ToggleAccept(index, value); 46 manager_->ToggleAccept(index, value);
48 } 47 }
49 48
50 void Accept() { 49 void Accept() {
51 manager_->Accept(); 50 manager_->Accept();
52 } 51 }
53 52
54 void Closing() { 53 void Closing() {
55 manager_->Closing(); 54 manager_->Closing();
56 } 55 }
57 56
58 void WaitForFrameLoad() { 57 void WaitForFrameLoad() {
59 // PermissionBubbleManager ignores all parameters. Yay? 58 // PermissionRequestManager ignores all parameters. Yay?
60 manager_->DocumentLoadedInFrame(NULL); 59 manager_->DocumentLoadedInFrame(NULL);
61 base::MessageLoop::current()->RunUntilIdle(); 60 base::MessageLoop::current()->RunUntilIdle();
62 } 61 }
63 62
64 void WaitForCoalescing() { 63 void WaitForCoalescing() {
65 manager_->DocumentOnLoadCompletedInMainFrame(); 64 manager_->DocumentOnLoadCompletedInMainFrame();
66 base::MessageLoop::current()->RunUntilIdle(); 65 base::MessageLoop::current()->RunUntilIdle();
67 } 66 }
68 67
69 void MockTabSwitchAway() { manager_->HideBubble(); } 68 void MockTabSwitchAway() { manager_->HideBubble(); }
70 69
71 void MockTabSwitchBack() { manager_->DisplayPendingRequests(); } 70 void MockTabSwitchBack() { manager_->DisplayPendingRequests(); }
72 71
73 virtual void NavigationEntryCommitted( 72 virtual void NavigationEntryCommitted(
74 const content::LoadCommittedDetails& details) { 73 const content::LoadCommittedDetails& details) {
75 manager_->NavigationEntryCommitted(details); 74 manager_->NavigationEntryCommitted(details);
76 } 75 }
77 76
78 protected: 77 protected:
79 MockPermissionBubbleRequest request1_; 78 MockPermissionBubbleRequest request1_;
80 MockPermissionBubbleRequest request2_; 79 MockPermissionBubbleRequest request2_;
81 MockPermissionBubbleRequest iframe_request_same_domain_; 80 MockPermissionBubbleRequest iframe_request_same_domain_;
82 MockPermissionBubbleRequest iframe_request_other_domain_; 81 MockPermissionBubbleRequest iframe_request_other_domain_;
83 std::unique_ptr<PermissionBubbleManager> manager_; 82 std::unique_ptr<PermissionRequestManager> manager_;
84 std::unique_ptr<MockPermissionBubbleFactory> view_factory_; 83 std::unique_ptr<MockPermissionBubbleFactory> view_factory_;
85 }; 84 };
86 85
87 TEST_F(PermissionBubbleManagerTest, SingleRequest) { 86 TEST_F(PermissionRequestManagerTest, SingleRequest) {
88 manager_->AddRequest(&request1_); 87 manager_->AddRequest(&request1_);
89 manager_->DisplayPendingRequests(); 88 manager_->DisplayPendingRequests();
90 WaitForCoalescing(); 89 WaitForCoalescing();
91 90
92 EXPECT_TRUE(view_factory_->is_visible()); 91 EXPECT_TRUE(view_factory_->is_visible());
93 ASSERT_EQ(view_factory_->request_count(), 1); 92 ASSERT_EQ(view_factory_->request_count(), 1);
94 93
95 ToggleAccept(0, true); 94 ToggleAccept(0, true);
96 Accept(); 95 Accept();
97 EXPECT_TRUE(request1_.granted()); 96 EXPECT_TRUE(request1_.granted());
98 } 97 }
99 98
100 TEST_F(PermissionBubbleManagerTest, SingleRequestViewFirst) { 99 TEST_F(PermissionRequestManagerTest, SingleRequestViewFirst) {
101 manager_->DisplayPendingRequests(); 100 manager_->DisplayPendingRequests();
102 manager_->AddRequest(&request1_); 101 manager_->AddRequest(&request1_);
103 WaitForCoalescing(); 102 WaitForCoalescing();
104 103
105 EXPECT_TRUE(view_factory_->is_visible()); 104 EXPECT_TRUE(view_factory_->is_visible());
106 ASSERT_EQ(view_factory_->request_count(), 1); 105 ASSERT_EQ(view_factory_->request_count(), 1);
107 106
108 ToggleAccept(0, true); 107 ToggleAccept(0, true);
109 Accept(); 108 Accept();
110 EXPECT_TRUE(request1_.granted()); 109 EXPECT_TRUE(request1_.granted());
111 } 110 }
112 111
113 TEST_F(PermissionBubbleManagerTest, TwoRequests) { 112 TEST_F(PermissionRequestManagerTest, TwoRequests) {
114 manager_->AddRequest(&request1_); 113 manager_->AddRequest(&request1_);
115 manager_->AddRequest(&request2_); 114 manager_->AddRequest(&request2_);
116 manager_->DisplayPendingRequests(); 115 manager_->DisplayPendingRequests();
117 WaitForCoalescing(); 116 WaitForCoalescing();
118 117
119 EXPECT_TRUE(view_factory_->is_visible()); 118 EXPECT_TRUE(view_factory_->is_visible());
120 ASSERT_EQ(view_factory_->request_count(), 2); 119 ASSERT_EQ(view_factory_->request_count(), 2);
121 120
122 ToggleAccept(0, true); 121 ToggleAccept(0, true);
123 ToggleAccept(1, false); 122 ToggleAccept(1, false);
124 Accept(); 123 Accept();
125 EXPECT_TRUE(request1_.granted()); 124 EXPECT_TRUE(request1_.granted());
126 EXPECT_FALSE(request2_.granted()); 125 EXPECT_FALSE(request2_.granted());
127 } 126 }
128 127
129 TEST_F(PermissionBubbleManagerTest, TwoRequestsTabSwitch) { 128 TEST_F(PermissionRequestManagerTest, TwoRequestsTabSwitch) {
130 manager_->AddRequest(&request1_); 129 manager_->AddRequest(&request1_);
131 manager_->AddRequest(&request2_); 130 manager_->AddRequest(&request2_);
132 manager_->DisplayPendingRequests(); 131 manager_->DisplayPendingRequests();
133 WaitForCoalescing(); 132 WaitForCoalescing();
134 133
135 EXPECT_TRUE(view_factory_->is_visible()); 134 EXPECT_TRUE(view_factory_->is_visible());
136 ASSERT_EQ(view_factory_->request_count(), 2); 135 ASSERT_EQ(view_factory_->request_count(), 2);
137 136
138 ToggleAccept(0, true); 137 ToggleAccept(0, true);
139 ToggleAccept(1, false); 138 ToggleAccept(1, false);
140 139
141 MockTabSwitchAway(); 140 MockTabSwitchAway();
142 EXPECT_FALSE(view_factory_->is_visible()); 141 EXPECT_FALSE(view_factory_->is_visible());
143 142
144 MockTabSwitchBack(); 143 MockTabSwitchBack();
145 WaitForCoalescing(); 144 WaitForCoalescing();
146 EXPECT_TRUE(view_factory_->is_visible()); 145 EXPECT_TRUE(view_factory_->is_visible());
147 ASSERT_EQ(view_factory_->request_count(), 2); 146 ASSERT_EQ(view_factory_->request_count(), 2);
148 147
149 Accept(); 148 Accept();
150 EXPECT_TRUE(request1_.granted()); 149 EXPECT_TRUE(request1_.granted());
151 EXPECT_FALSE(request2_.granted()); 150 EXPECT_FALSE(request2_.granted());
152 } 151 }
153 152
154 TEST_F(PermissionBubbleManagerTest, NoRequests) { 153 TEST_F(PermissionRequestManagerTest, NoRequests) {
155 manager_->DisplayPendingRequests(); 154 manager_->DisplayPendingRequests();
156 WaitForCoalescing(); 155 WaitForCoalescing();
157 EXPECT_FALSE(view_factory_->is_visible()); 156 EXPECT_FALSE(view_factory_->is_visible());
158 } 157 }
159 158
160 TEST_F(PermissionBubbleManagerTest, NoView) { 159 TEST_F(PermissionRequestManagerTest, NoView) {
161 manager_->AddRequest(&request1_); 160 manager_->AddRequest(&request1_);
162 // Don't display the pending requests. 161 // Don't display the pending requests.
163 WaitForCoalescing(); 162 WaitForCoalescing();
164 EXPECT_FALSE(view_factory_->is_visible()); 163 EXPECT_FALSE(view_factory_->is_visible());
165 } 164 }
166 165
167 TEST_F(PermissionBubbleManagerTest, TwoRequestsCoalesce) { 166 TEST_F(PermissionRequestManagerTest, TwoRequestsCoalesce) {
168 manager_->DisplayPendingRequests(); 167 manager_->DisplayPendingRequests();
169 manager_->AddRequest(&request1_); 168 manager_->AddRequest(&request1_);
170 manager_->AddRequest(&request2_); 169 manager_->AddRequest(&request2_);
171 EXPECT_FALSE(view_factory_->is_visible()); 170 EXPECT_FALSE(view_factory_->is_visible());
172 WaitForCoalescing(); 171 WaitForCoalescing();
173 172
174 EXPECT_TRUE(view_factory_->is_visible()); 173 EXPECT_TRUE(view_factory_->is_visible());
175 ASSERT_EQ(view_factory_->request_count(), 2); 174 ASSERT_EQ(view_factory_->request_count(), 2);
176 } 175 }
177 176
178 TEST_F(PermissionBubbleManagerTest, TwoRequestsDoNotCoalesce) { 177 TEST_F(PermissionRequestManagerTest, TwoRequestsDoNotCoalesce) {
179 manager_->DisplayPendingRequests(); 178 manager_->DisplayPendingRequests();
180 manager_->AddRequest(&request1_); 179 manager_->AddRequest(&request1_);
181 WaitForCoalescing(); 180 WaitForCoalescing();
182 manager_->AddRequest(&request2_); 181 manager_->AddRequest(&request2_);
183 182
184 EXPECT_TRUE(view_factory_->is_visible()); 183 EXPECT_TRUE(view_factory_->is_visible());
185 ASSERT_EQ(view_factory_->request_count(), 1); 184 ASSERT_EQ(view_factory_->request_count(), 1);
186 } 185 }
187 186
188 TEST_F(PermissionBubbleManagerTest, TwoRequestsShownInTwoBubbles) { 187 TEST_F(PermissionRequestManagerTest, TwoRequestsShownInTwoBubbles) {
189 manager_->DisplayPendingRequests(); 188 manager_->DisplayPendingRequests();
190 manager_->AddRequest(&request1_); 189 manager_->AddRequest(&request1_);
191 WaitForCoalescing(); 190 WaitForCoalescing();
192 manager_->AddRequest(&request2_); 191 manager_->AddRequest(&request2_);
193 192
194 EXPECT_TRUE(view_factory_->is_visible()); 193 EXPECT_TRUE(view_factory_->is_visible());
195 ASSERT_EQ(view_factory_->request_count(), 1); 194 ASSERT_EQ(view_factory_->request_count(), 1);
196 195
197 Accept(); 196 Accept();
198 WaitForCoalescing(); 197 WaitForCoalescing();
199 198
200 EXPECT_TRUE(view_factory_->is_visible()); 199 EXPECT_TRUE(view_factory_->is_visible());
201 ASSERT_EQ(view_factory_->request_count(), 1); 200 ASSERT_EQ(view_factory_->request_count(), 1);
202 ASSERT_EQ(view_factory_->show_count(), 2); 201 ASSERT_EQ(view_factory_->show_count(), 2);
203 } 202 }
204 203
205 TEST_F(PermissionBubbleManagerTest, TestAddDuplicateRequest) { 204 TEST_F(PermissionRequestManagerTest, TestAddDuplicateRequest) {
206 manager_->DisplayPendingRequests(); 205 manager_->DisplayPendingRequests();
207 manager_->AddRequest(&request1_); 206 manager_->AddRequest(&request1_);
208 manager_->AddRequest(&request2_); 207 manager_->AddRequest(&request2_);
209 manager_->AddRequest(&request1_); 208 manager_->AddRequest(&request1_);
210 209
211 WaitForCoalescing(); 210 WaitForCoalescing();
212 EXPECT_TRUE(view_factory_->is_visible()); 211 EXPECT_TRUE(view_factory_->is_visible());
213 ASSERT_EQ(view_factory_->request_count(), 2); 212 ASSERT_EQ(view_factory_->request_count(), 2);
214 } 213 }
215 214
216 TEST_F(PermissionBubbleManagerTest, SequentialRequests) { 215 TEST_F(PermissionRequestManagerTest, SequentialRequests) {
217 manager_->DisplayPendingRequests(); 216 manager_->DisplayPendingRequests();
218 manager_->AddRequest(&request1_); 217 manager_->AddRequest(&request1_);
219 WaitForCoalescing(); 218 WaitForCoalescing();
220 EXPECT_TRUE(view_factory_->is_visible()); 219 EXPECT_TRUE(view_factory_->is_visible());
221 220
222 Accept(); 221 Accept();
223 EXPECT_TRUE(request1_.granted()); 222 EXPECT_TRUE(request1_.granted());
224 223
225 EXPECT_FALSE(view_factory_->is_visible()); 224 EXPECT_FALSE(view_factory_->is_visible());
226 225
227 manager_->AddRequest(&request2_); 226 manager_->AddRequest(&request2_);
228 WaitForCoalescing(); 227 WaitForCoalescing();
229 EXPECT_TRUE(view_factory_->is_visible()); 228 EXPECT_TRUE(view_factory_->is_visible());
230 Accept(); 229 Accept();
231 EXPECT_FALSE(view_factory_->is_visible()); 230 EXPECT_FALSE(view_factory_->is_visible());
232 EXPECT_TRUE(request2_.granted()); 231 EXPECT_TRUE(request2_.granted());
233 } 232 }
234 233
235 TEST_F(PermissionBubbleManagerTest, SameRequestRejected) { 234 TEST_F(PermissionRequestManagerTest, SameRequestRejected) {
236 manager_->DisplayPendingRequests(); 235 manager_->DisplayPendingRequests();
237 manager_->AddRequest(&request1_); 236 manager_->AddRequest(&request1_);
238 manager_->AddRequest(&request1_); 237 manager_->AddRequest(&request1_);
239 EXPECT_FALSE(request1_.finished()); 238 EXPECT_FALSE(request1_.finished());
240 239
241 WaitForCoalescing(); 240 WaitForCoalescing();
242 EXPECT_TRUE(view_factory_->is_visible()); 241 EXPECT_TRUE(view_factory_->is_visible());
243 ASSERT_EQ(view_factory_->request_count(), 1); 242 ASSERT_EQ(view_factory_->request_count(), 1);
244 } 243 }
245 244
246 TEST_F(PermissionBubbleManagerTest, DuplicateRequestCancelled) { 245 TEST_F(PermissionRequestManagerTest, DuplicateRequestCancelled) {
247 manager_->DisplayPendingRequests(); 246 manager_->DisplayPendingRequests();
248 manager_->AddRequest(&request1_); 247 manager_->AddRequest(&request1_);
249 MockPermissionBubbleRequest dupe_request("test1"); 248 MockPermissionBubbleRequest dupe_request("test1");
250 manager_->AddRequest(&dupe_request); 249 manager_->AddRequest(&dupe_request);
251 EXPECT_FALSE(dupe_request.finished()); 250 EXPECT_FALSE(dupe_request.finished());
252 EXPECT_FALSE(request1_.finished()); 251 EXPECT_FALSE(request1_.finished());
253 manager_->CancelRequest(&request1_); 252 manager_->CancelRequest(&request1_);
254 EXPECT_TRUE(dupe_request.finished()); 253 EXPECT_TRUE(dupe_request.finished());
255 EXPECT_TRUE(request1_.finished()); 254 EXPECT_TRUE(request1_.finished());
256 } 255 }
257 256
258 TEST_F(PermissionBubbleManagerTest, DuplicateQueuedRequest) { 257 TEST_F(PermissionRequestManagerTest, DuplicateQueuedRequest) {
259 manager_->DisplayPendingRequests(); 258 manager_->DisplayPendingRequests();
260 manager_->AddRequest(&request1_); 259 manager_->AddRequest(&request1_);
261 WaitForCoalescing(); 260 WaitForCoalescing();
262 manager_->AddRequest(&request2_); 261 manager_->AddRequest(&request2_);
263 262
264 MockPermissionBubbleRequest dupe_request("test1"); 263 MockPermissionBubbleRequest dupe_request("test1");
265 manager_->AddRequest(&dupe_request); 264 manager_->AddRequest(&dupe_request);
266 EXPECT_FALSE(dupe_request.finished()); 265 EXPECT_FALSE(dupe_request.finished());
267 EXPECT_FALSE(request1_.finished()); 266 EXPECT_FALSE(request1_.finished());
268 267
269 MockPermissionBubbleRequest dupe_request2("test2"); 268 MockPermissionBubbleRequest dupe_request2("test2");
270 manager_->AddRequest(&dupe_request2); 269 manager_->AddRequest(&dupe_request2);
271 EXPECT_FALSE(dupe_request2.finished()); 270 EXPECT_FALSE(dupe_request2.finished());
272 EXPECT_FALSE(request2_.finished()); 271 EXPECT_FALSE(request2_.finished());
273 272
274 manager_->CancelRequest(&request1_); 273 manager_->CancelRequest(&request1_);
275 EXPECT_TRUE(dupe_request.finished()); 274 EXPECT_TRUE(dupe_request.finished());
276 EXPECT_TRUE(request1_.finished()); 275 EXPECT_TRUE(request1_.finished());
277 276
278 manager_->CancelRequest(&request2_); 277 manager_->CancelRequest(&request2_);
279 EXPECT_TRUE(dupe_request2.finished()); 278 EXPECT_TRUE(dupe_request2.finished());
280 EXPECT_TRUE(request2_.finished()); 279 EXPECT_TRUE(request2_.finished());
281 } 280 }
282 281
283 TEST_F(PermissionBubbleManagerTest, ForgetRequestsOnPageNavigation) { 282 TEST_F(PermissionRequestManagerTest, ForgetRequestsOnPageNavigation) {
284 manager_->DisplayPendingRequests(); 283 manager_->DisplayPendingRequests();
285 manager_->AddRequest(&request1_); 284 manager_->AddRequest(&request1_);
286 WaitForCoalescing(); 285 WaitForCoalescing();
287 manager_->AddRequest(&request2_); 286 manager_->AddRequest(&request2_);
288 manager_->AddRequest(&iframe_request_other_domain_); 287 manager_->AddRequest(&iframe_request_other_domain_);
289 288
290 EXPECT_TRUE(view_factory_->is_visible()); 289 EXPECT_TRUE(view_factory_->is_visible());
291 ASSERT_EQ(view_factory_->request_count(), 1); 290 ASSERT_EQ(view_factory_->request_count(), 1);
292 291
293 NavigateAndCommit(GURL("http://www2.google.com/")); 292 NavigateAndCommit(GURL("http://www2.google.com/"));
294 WaitForCoalescing(); 293 WaitForCoalescing();
295 294
296 EXPECT_FALSE(view_factory_->is_visible()); 295 EXPECT_FALSE(view_factory_->is_visible());
297 EXPECT_TRUE(request1_.finished()); 296 EXPECT_TRUE(request1_.finished());
298 EXPECT_TRUE(request2_.finished()); 297 EXPECT_TRUE(request2_.finished());
299 EXPECT_TRUE(iframe_request_other_domain_.finished()); 298 EXPECT_TRUE(iframe_request_other_domain_.finished());
300 } 299 }
301 300
302 TEST_F(PermissionBubbleManagerTest, TestCancelQueued) { 301 TEST_F(PermissionRequestManagerTest, TestCancelQueued) {
303 manager_->AddRequest(&request1_); 302 manager_->AddRequest(&request1_);
304 EXPECT_FALSE(view_factory_->is_visible()); 303 EXPECT_FALSE(view_factory_->is_visible());
305 304
306 manager_->CancelRequest(&request1_); 305 manager_->CancelRequest(&request1_);
307 EXPECT_TRUE(request1_.finished()); 306 EXPECT_TRUE(request1_.finished());
308 EXPECT_FALSE(view_factory_->is_visible()); 307 EXPECT_FALSE(view_factory_->is_visible());
309 manager_->DisplayPendingRequests(); 308 manager_->DisplayPendingRequests();
310 EXPECT_FALSE(view_factory_->is_visible()); 309 EXPECT_FALSE(view_factory_->is_visible());
311 310
312 manager_->AddRequest(&request2_); 311 manager_->AddRequest(&request2_);
313 WaitForCoalescing(); 312 WaitForCoalescing();
314 EXPECT_TRUE(view_factory_->is_visible()); 313 EXPECT_TRUE(view_factory_->is_visible());
315 ASSERT_EQ(view_factory_->request_count(), 1); 314 ASSERT_EQ(view_factory_->request_count(), 1);
316 } 315 }
317 316
318 TEST_F(PermissionBubbleManagerTest, TestCancelWhileDialogShown) { 317 TEST_F(PermissionRequestManagerTest, TestCancelWhileDialogShown) {
319 manager_->DisplayPendingRequests(); 318 manager_->DisplayPendingRequests();
320 manager_->AddRequest(&request1_); 319 manager_->AddRequest(&request1_);
321 WaitForCoalescing(); 320 WaitForCoalescing();
322 321
323 view_factory_->SetCanUpdateUi(true); 322 view_factory_->SetCanUpdateUi(true);
324 EXPECT_TRUE(view_factory_->is_visible()); 323 EXPECT_TRUE(view_factory_->is_visible());
325 EXPECT_FALSE(request1_.finished()); 324 EXPECT_FALSE(request1_.finished());
326 manager_->CancelRequest(&request1_); 325 manager_->CancelRequest(&request1_);
327 WaitForCoalescing(); 326 WaitForCoalescing();
328 EXPECT_TRUE(request1_.finished()); 327 EXPECT_TRUE(request1_.finished());
329 EXPECT_FALSE(view_factory_->is_visible()); 328 EXPECT_FALSE(view_factory_->is_visible());
330 } 329 }
331 330
332 TEST_F(PermissionBubbleManagerTest, TestCancelWhileDialogShownNoUpdate) { 331 TEST_F(PermissionRequestManagerTest, TestCancelWhileDialogShownNoUpdate) {
333 manager_->DisplayPendingRequests(); 332 manager_->DisplayPendingRequests();
334 view_factory_->SetCanUpdateUi(false); 333 view_factory_->SetCanUpdateUi(false);
335 manager_->AddRequest(&request1_); 334 manager_->AddRequest(&request1_);
336 WaitForCoalescing(); 335 WaitForCoalescing();
337 view_factory_->SetCanUpdateUi(false); 336 view_factory_->SetCanUpdateUi(false);
338 337
339 EXPECT_TRUE(view_factory_->is_visible()); 338 EXPECT_TRUE(view_factory_->is_visible());
340 EXPECT_FALSE(request1_.finished()); 339 EXPECT_FALSE(request1_.finished());
341 manager_->CancelRequest(&request1_); 340 manager_->CancelRequest(&request1_);
342 EXPECT_TRUE(request1_.finished()); 341 EXPECT_TRUE(request1_.finished());
343 EXPECT_TRUE(view_factory_->is_visible()); 342 EXPECT_TRUE(view_factory_->is_visible());
344 Closing(); 343 Closing();
345 } 344 }
346 345
347 TEST_F(PermissionBubbleManagerTest, TestCancelPendingRequest) { 346 TEST_F(PermissionRequestManagerTest, TestCancelPendingRequest) {
348 manager_->DisplayPendingRequests(); 347 manager_->DisplayPendingRequests();
349 manager_->AddRequest(&request1_); 348 manager_->AddRequest(&request1_);
350 WaitForCoalescing(); 349 WaitForCoalescing();
351 manager_->AddRequest(&request2_); 350 manager_->AddRequest(&request2_);
352 351
353 EXPECT_TRUE(view_factory_->is_visible()); 352 EXPECT_TRUE(view_factory_->is_visible());
354 ASSERT_EQ(view_factory_->request_count(), 1); 353 ASSERT_EQ(view_factory_->request_count(), 1);
355 manager_->CancelRequest(&request2_); 354 manager_->CancelRequest(&request2_);
356 355
357 EXPECT_TRUE(view_factory_->is_visible()); 356 EXPECT_TRUE(view_factory_->is_visible());
358 EXPECT_FALSE(request1_.finished()); 357 EXPECT_FALSE(request1_.finished());
359 EXPECT_TRUE(request2_.finished()); 358 EXPECT_TRUE(request2_.finished());
360 } 359 }
361 360
362 TEST_F(PermissionBubbleManagerTest, MainFrameNoRequestIFrameRequest) { 361 TEST_F(PermissionRequestManagerTest, MainFrameNoRequestIFrameRequest) {
363 manager_->DisplayPendingRequests(); 362 manager_->DisplayPendingRequests();
364 manager_->AddRequest(&iframe_request_same_domain_); 363 manager_->AddRequest(&iframe_request_same_domain_);
365 WaitForCoalescing(); 364 WaitForCoalescing();
366 WaitForFrameLoad(); 365 WaitForFrameLoad();
367 366
368 EXPECT_TRUE(view_factory_->is_visible()); 367 EXPECT_TRUE(view_factory_->is_visible());
369 Closing(); 368 Closing();
370 EXPECT_TRUE(iframe_request_same_domain_.finished()); 369 EXPECT_TRUE(iframe_request_same_domain_.finished());
371 } 370 }
372 371
373 TEST_F(PermissionBubbleManagerTest, MainFrameAndIFrameRequestSameDomain) { 372 TEST_F(PermissionRequestManagerTest, MainFrameAndIFrameRequestSameDomain) {
374 manager_->DisplayPendingRequests(); 373 manager_->DisplayPendingRequests();
375 manager_->AddRequest(&request1_); 374 manager_->AddRequest(&request1_);
376 manager_->AddRequest(&iframe_request_same_domain_); 375 manager_->AddRequest(&iframe_request_same_domain_);
377 WaitForFrameLoad(); 376 WaitForFrameLoad();
378 WaitForCoalescing(); 377 WaitForCoalescing();
379 378
380 EXPECT_TRUE(view_factory_->is_visible()); 379 EXPECT_TRUE(view_factory_->is_visible());
381 ASSERT_EQ(view_factory_->request_count(), 2); 380 ASSERT_EQ(view_factory_->request_count(), 2);
382 Closing(); 381 Closing();
383 EXPECT_TRUE(request1_.finished()); 382 EXPECT_TRUE(request1_.finished());
384 EXPECT_TRUE(iframe_request_same_domain_.finished()); 383 EXPECT_TRUE(iframe_request_same_domain_.finished());
385 EXPECT_FALSE(view_factory_->is_visible()); 384 EXPECT_FALSE(view_factory_->is_visible());
386 } 385 }
387 386
388 TEST_F(PermissionBubbleManagerTest, MainFrameAndIFrameRequestOtherDomain) { 387 TEST_F(PermissionRequestManagerTest, MainFrameAndIFrameRequestOtherDomain) {
389 manager_->DisplayPendingRequests(); 388 manager_->DisplayPendingRequests();
390 manager_->AddRequest(&request1_); 389 manager_->AddRequest(&request1_);
391 manager_->AddRequest(&iframe_request_other_domain_); 390 manager_->AddRequest(&iframe_request_other_domain_);
392 WaitForFrameLoad(); 391 WaitForFrameLoad();
393 WaitForCoalescing(); 392 WaitForCoalescing();
394 393
395 EXPECT_TRUE(view_factory_->is_visible()); 394 EXPECT_TRUE(view_factory_->is_visible());
396 Closing(); 395 Closing();
397 EXPECT_TRUE(request1_.finished()); 396 EXPECT_TRUE(request1_.finished());
398 EXPECT_FALSE(iframe_request_other_domain_.finished()); 397 EXPECT_FALSE(iframe_request_other_domain_.finished());
399 EXPECT_TRUE(view_factory_->is_visible()); 398 EXPECT_TRUE(view_factory_->is_visible());
400 Closing(); 399 Closing();
401 EXPECT_TRUE(iframe_request_other_domain_.finished()); 400 EXPECT_TRUE(iframe_request_other_domain_.finished());
402 } 401 }
403 402
404 TEST_F(PermissionBubbleManagerTest, IFrameRequestWhenMainRequestVisible) { 403 TEST_F(PermissionRequestManagerTest, IFrameRequestWhenMainRequestVisible) {
405 manager_->DisplayPendingRequests(); 404 manager_->DisplayPendingRequests();
406 manager_->AddRequest(&request1_); 405 manager_->AddRequest(&request1_);
407 WaitForCoalescing(); 406 WaitForCoalescing();
408 EXPECT_TRUE(view_factory_->is_visible()); 407 EXPECT_TRUE(view_factory_->is_visible());
409 408
410 manager_->AddRequest(&iframe_request_same_domain_); 409 manager_->AddRequest(&iframe_request_same_domain_);
411 WaitForFrameLoad(); 410 WaitForFrameLoad();
412 ASSERT_EQ(view_factory_->request_count(), 1); 411 ASSERT_EQ(view_factory_->request_count(), 1);
413 Closing(); 412 Closing();
414 EXPECT_TRUE(request1_.finished()); 413 EXPECT_TRUE(request1_.finished());
415 EXPECT_FALSE(iframe_request_same_domain_.finished()); 414 EXPECT_FALSE(iframe_request_same_domain_.finished());
416 EXPECT_TRUE(view_factory_->is_visible()); 415 EXPECT_TRUE(view_factory_->is_visible());
417 ASSERT_EQ(view_factory_->request_count(), 1); 416 ASSERT_EQ(view_factory_->request_count(), 1);
418 Closing(); 417 Closing();
419 EXPECT_TRUE(iframe_request_same_domain_.finished()); 418 EXPECT_TRUE(iframe_request_same_domain_.finished());
420 } 419 }
421 420
422 TEST_F(PermissionBubbleManagerTest, 421 TEST_F(PermissionRequestManagerTest,
423 IFrameRequestOtherDomainWhenMainRequestVisible) { 422 IFrameRequestOtherDomainWhenMainRequestVisible) {
424 manager_->DisplayPendingRequests(); 423 manager_->DisplayPendingRequests();
425 manager_->AddRequest(&request1_); 424 manager_->AddRequest(&request1_);
426 WaitForCoalescing(); 425 WaitForCoalescing();
427 EXPECT_TRUE(view_factory_->is_visible()); 426 EXPECT_TRUE(view_factory_->is_visible());
428 427
429 manager_->AddRequest(&iframe_request_other_domain_); 428 manager_->AddRequest(&iframe_request_other_domain_);
430 WaitForFrameLoad(); 429 WaitForFrameLoad();
431 Closing(); 430 Closing();
432 EXPECT_TRUE(request1_.finished()); 431 EXPECT_TRUE(request1_.finished());
433 EXPECT_FALSE(iframe_request_other_domain_.finished()); 432 EXPECT_FALSE(iframe_request_other_domain_.finished());
434 EXPECT_TRUE(view_factory_->is_visible()); 433 EXPECT_TRUE(view_factory_->is_visible());
435 Closing(); 434 Closing();
436 EXPECT_TRUE(iframe_request_other_domain_.finished()); 435 EXPECT_TRUE(iframe_request_other_domain_.finished());
437 } 436 }
438 437
439 TEST_F(PermissionBubbleManagerTest, RequestsDontNeedUserGesture) { 438 TEST_F(PermissionRequestManagerTest, RequestsDontNeedUserGesture) {
440 manager_->DisplayPendingRequests(); 439 manager_->DisplayPendingRequests();
441 WaitForFrameLoad(); 440 WaitForFrameLoad();
442 WaitForCoalescing(); 441 WaitForCoalescing();
443 manager_->AddRequest(&request1_); 442 manager_->AddRequest(&request1_);
444 manager_->AddRequest(&iframe_request_other_domain_); 443 manager_->AddRequest(&iframe_request_other_domain_);
445 manager_->AddRequest(&request2_); 444 manager_->AddRequest(&request2_);
446 base::MessageLoop::current()->RunUntilIdle(); 445 base::MessageLoop::current()->RunUntilIdle();
447 446
448 EXPECT_TRUE(view_factory_->is_visible()); 447 EXPECT_TRUE(view_factory_->is_visible());
449 } 448 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698