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

Side by Side Diff: chrome/browser/extensions/extension_browsertest.cc

Issue 9834022: Expand usage of platform-apps flag and permission features. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Moved switch check to Extension::Create(). Created 8 years, 9 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/extensions/extension_browsertest.h" 5 #include "chrome/browser/extensions/extension_browsertest.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/file_path.h" 10 #include "base/file_path.h"
(...skipping 18 matching lines...) Expand all
29 #include "chrome/common/chrome_paths.h" 29 #include "chrome/common/chrome_paths.h"
30 #include "chrome/common/chrome_switches.h" 30 #include "chrome/common/chrome_switches.h"
31 #include "chrome/test/base/ui_test_utils.h" 31 #include "chrome/test/base/ui_test_utils.h"
32 #include "content/public/browser/notification_registrar.h" 32 #include "content/public/browser/notification_registrar.h"
33 #include "content/public/browser/notification_service.h" 33 #include "content/public/browser/notification_service.h"
34 34
35 ExtensionBrowserTest::ExtensionBrowserTest() 35 ExtensionBrowserTest::ExtensionBrowserTest()
36 : loaded_(false), 36 : loaded_(false),
37 installed_(false), 37 installed_(false),
38 extension_installs_observed_(0), 38 extension_installs_observed_(0),
39 extension_load_errors_observed_(0),
39 target_page_action_count_(-1), 40 target_page_action_count_(-1),
40 target_visible_page_action_count_(-1) { 41 target_visible_page_action_count_(-1) {
41 EXPECT_TRUE(temp_dir_.CreateUniqueTempDir()); 42 EXPECT_TRUE(temp_dir_.CreateUniqueTempDir());
42 AppShortcutManager::SetShortcutCreationDisabledForTesting(true); 43 AppShortcutManager::SetShortcutCreationDisabledForTesting(true);
43 } 44 }
44 45
45 ExtensionBrowserTest::~ExtensionBrowserTest() { 46 ExtensionBrowserTest::~ExtensionBrowserTest() {
46 AppShortcutManager::SetShortcutCreationDisabledForTesting(false); 47 AppShortcutManager::SetShortcutCreationDisabledForTesting(false);
47 } 48 }
48 49
(...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after
418 content::NotificationService::AllSources()); 419 content::NotificationService::AllSources());
419 return extension_installs_observed_ == before; 420 return extension_installs_observed_ == before;
420 } 421 }
421 422
422 void ExtensionBrowserTest::WaitForExtensionLoad() { 423 void ExtensionBrowserTest::WaitForExtensionLoad() {
423 ui_test_utils::RegisterAndWait(this, chrome::NOTIFICATION_EXTENSION_LOADED, 424 ui_test_utils::RegisterAndWait(this, chrome::NOTIFICATION_EXTENSION_LOADED,
424 content::NotificationService::AllSources()); 425 content::NotificationService::AllSources());
425 WaitForExtensionHostsToLoad(); 426 WaitForExtensionHostsToLoad();
426 } 427 }
427 428
429 bool ExtensionBrowserTest::WaitForExtensionLoadError() {
430 int before = extension_load_errors_observed_;
431 ui_test_utils::RegisterAndWait(this,
432 chrome::NOTIFICATION_EXTENSION_LOAD_ERROR,
433 content::NotificationService::AllSources());
434 WaitForExtensionHostsToLoad();
435 return extension_load_errors_observed_ != before;
436 }
437
428 bool ExtensionBrowserTest::WaitForExtensionCrash( 438 bool ExtensionBrowserTest::WaitForExtensionCrash(
429 const std::string& extension_id) { 439 const std::string& extension_id) {
430 ExtensionService* service = browser()->profile()->GetExtensionService(); 440 ExtensionService* service = browser()->profile()->GetExtensionService();
431 441
432 if (!service->GetExtensionById(extension_id, true)) { 442 if (!service->GetExtensionById(extension_id, true)) {
433 // The extension is already unloaded, presumably due to a crash. 443 // The extension is already unloaded, presumably due to a crash.
434 return true; 444 return true;
435 } 445 }
436 ui_test_utils::RegisterAndWait( 446 ui_test_utils::RegisterAndWait(
437 this, chrome::NOTIFICATION_EXTENSION_PROCESS_TERMINATED, 447 this, chrome::NOTIFICATION_EXTENSION_PROCESS_TERMINATED,
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
478 case chrome::NOTIFICATION_EXTENSION_INSTALL_ERROR: 488 case chrome::NOTIFICATION_EXTENSION_INSTALL_ERROR:
479 VLOG(1) << "Got EXTENSION_INSTALL_ERROR notification."; 489 VLOG(1) << "Got EXTENSION_INSTALL_ERROR notification.";
480 MessageLoopForUI::current()->Quit(); 490 MessageLoopForUI::current()->Quit();
481 break; 491 break;
482 492
483 case chrome::NOTIFICATION_EXTENSION_PROCESS_TERMINATED: 493 case chrome::NOTIFICATION_EXTENSION_PROCESS_TERMINATED:
484 VLOG(1) << "Got EXTENSION_PROCESS_TERMINATED notification."; 494 VLOG(1) << "Got EXTENSION_PROCESS_TERMINATED notification.";
485 MessageLoopForUI::current()->Quit(); 495 MessageLoopForUI::current()->Quit();
486 break; 496 break;
487 497
498 case chrome::NOTIFICATION_EXTENSION_LOAD_ERROR:
499 VLOG(1) << "Got EXTENSION_LOAD_ERROR notification.";
500 ++extension_load_errors_observed_;
501 MessageLoopForUI::current()->Quit();
502 break;
503
488 case chrome::NOTIFICATION_EXTENSION_PAGE_ACTION_COUNT_CHANGED: { 504 case chrome::NOTIFICATION_EXTENSION_PAGE_ACTION_COUNT_CHANGED: {
489 LocationBarTesting* location_bar = 505 LocationBarTesting* location_bar =
490 browser()->window()->GetLocationBar()->GetLocationBarForTesting(); 506 browser()->window()->GetLocationBar()->GetLocationBarForTesting();
491 VLOG(1) << "Got EXTENSION_PAGE_ACTION_COUNT_CHANGED notification. Number " 507 VLOG(1) << "Got EXTENSION_PAGE_ACTION_COUNT_CHANGED notification. Number "
492 "of page actions: " << location_bar->PageActionCount(); 508 "of page actions: " << location_bar->PageActionCount();
493 if (location_bar->PageActionCount() == 509 if (location_bar->PageActionCount() ==
494 target_page_action_count_) { 510 target_page_action_count_) {
495 target_page_action_count_ = -1; 511 target_page_action_count_ = -1;
496 MessageLoopForUI::current()->Quit(); 512 MessageLoopForUI::current()->Quit();
497 } 513 }
(...skipping 12 matching lines...) Expand all
510 MessageLoopForUI::current()->Quit(); 526 MessageLoopForUI::current()->Quit();
511 } 527 }
512 break; 528 break;
513 } 529 }
514 530
515 default: 531 default:
516 NOTREACHED(); 532 NOTREACHED();
517 break; 533 break;
518 } 534 }
519 } 535 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698