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

Side by Side Diff: chrome/browser/ui/website_settings/permission_bubble_manager_unittest.cc

Issue 1610753002: Fixes Permission Bubbles never responding to duplicate requests (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix tests and RequestFinishedIncludingDuplicates DCHECK Created 4 years, 10 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
« no previous file with comments | « chrome/browser/ui/website_settings/permission_bubble_manager.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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"
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after
295 manager_->AddRequest(&request1_); 295 manager_->AddRequest(&request1_);
296 manager_->AddRequest(&request1_); 296 manager_->AddRequest(&request1_);
297 EXPECT_FALSE(request1_.finished()); 297 EXPECT_FALSE(request1_.finished());
298 298
299 WaitForCoalescing(); 299 WaitForCoalescing();
300 EXPECT_TRUE(view_()->shown_); 300 EXPECT_TRUE(view_()->shown_);
301 ASSERT_EQ(1u, view_()->permission_requests_.size()); 301 ASSERT_EQ(1u, view_()->permission_requests_.size());
302 EXPECT_EQ(&request1_, view_()->permission_requests_[0]); 302 EXPECT_EQ(&request1_, view_()->permission_requests_[0]);
303 } 303 }
304 304
305 TEST_F(PermissionBubbleManagerTest, DuplicateRequestRejected) { 305 TEST_F(PermissionBubbleManagerTest, DuplicateRequestCancelled) {
306 manager_->DisplayPendingRequests(); 306 manager_->DisplayPendingRequests();
307 manager_->AddRequest(&request1_); 307 manager_->AddRequest(&request1_);
308 MockPermissionBubbleRequest dupe_request("test1"); 308 MockPermissionBubbleRequest dupe_request("test1");
309 manager_->AddRequest(&dupe_request); 309 manager_->AddRequest(&dupe_request);
310 EXPECT_FALSE(dupe_request.finished());
311 EXPECT_FALSE(request1_.finished());
312 manager_->CancelRequest(&request1_);
310 EXPECT_TRUE(dupe_request.finished()); 313 EXPECT_TRUE(dupe_request.finished());
311 EXPECT_FALSE(request1_.finished()); 314 EXPECT_TRUE(request1_.finished());
312 } 315 }
313 316
314 TEST_F(PermissionBubbleManagerTest, DuplicateQueuedRequest) { 317 TEST_F(PermissionBubbleManagerTest, DuplicateQueuedRequest) {
315 manager_->DisplayPendingRequests(); 318 manager_->DisplayPendingRequests();
316 manager_->AddRequest(&request1_); 319 manager_->AddRequest(&request1_);
317 WaitForCoalescing(); 320 WaitForCoalescing();
318 manager_->AddRequest(&request2_); 321 manager_->AddRequest(&request2_);
319 322
320 MockPermissionBubbleRequest dupe_request("test1"); 323 MockPermissionBubbleRequest dupe_request("test1");
321 manager_->AddRequest(&dupe_request); 324 manager_->AddRequest(&dupe_request);
322 EXPECT_TRUE(dupe_request.finished()); 325 EXPECT_FALSE(dupe_request.finished());
323 EXPECT_FALSE(request1_.finished()); 326 EXPECT_FALSE(request1_.finished());
324 327
325 MockPermissionBubbleRequest dupe_request2("test1"); 328 MockPermissionBubbleRequest dupe_request2("test2");
326 manager_->AddRequest(&dupe_request2); 329 manager_->AddRequest(&dupe_request2);
330 EXPECT_FALSE(dupe_request2.finished());
331 EXPECT_FALSE(request2_.finished());
332
333 manager_->CancelRequest(&request1_);
334 EXPECT_TRUE(dupe_request.finished());
335 EXPECT_TRUE(request1_.finished());
336
337 manager_->CancelRequest(&request2_);
327 EXPECT_TRUE(dupe_request2.finished()); 338 EXPECT_TRUE(dupe_request2.finished());
328 EXPECT_FALSE(request2_.finished()); 339 EXPECT_TRUE(request2_.finished());
329 } 340 }
330 341
331 TEST_F(PermissionBubbleManagerTest, ForgetRequestsOnPageNavigation) { 342 TEST_F(PermissionBubbleManagerTest, ForgetRequestsOnPageNavigation) {
332 manager_->DisplayPendingRequests(); 343 manager_->DisplayPendingRequests();
333 manager_->AddRequest(&request1_); 344 manager_->AddRequest(&request1_);
334 WaitForCoalescing(); 345 WaitForCoalescing();
335 manager_->AddRequest(&request2_); 346 manager_->AddRequest(&request2_);
336 manager_->AddRequest(&iframe_request_other_domain_); 347 manager_->AddRequest(&iframe_request_other_domain_);
337 348
338 EXPECT_TRUE(view_()->shown_); 349 EXPECT_TRUE(view_()->shown_);
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
526 manager_->DisplayPendingRequests(); 537 manager_->DisplayPendingRequests();
527 WaitForFrameLoad(); 538 WaitForFrameLoad();
528 WaitForCoalescing(); 539 WaitForCoalescing();
529 manager_->AddRequest(&request1_); 540 manager_->AddRequest(&request1_);
530 manager_->AddRequest(&iframe_request_other_domain_); 541 manager_->AddRequest(&iframe_request_other_domain_);
531 manager_->AddRequest(&request2_); 542 manager_->AddRequest(&request2_);
532 base::MessageLoop::current()->RunUntilIdle(); 543 base::MessageLoop::current()->RunUntilIdle();
533 544
534 EXPECT_TRUE(view_()->shown_); 545 EXPECT_TRUE(view_()->shown_);
535 } 546 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/website_settings/permission_bubble_manager.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698