| Index: chrome/browser/extensions/extension_processes_apitest.cc
|
| ===================================================================
|
| --- chrome/browser/extensions/extension_processes_apitest.cc (revision 61514)
|
| +++ chrome/browser/extensions/extension_processes_apitest.cc (working copy)
|
| @@ -3,12 +3,42 @@
|
| // found in the LICENSE file.
|
|
|
| #include "base/command_line.h"
|
| +#include "chrome/browser/browser.h"
|
| +#include "chrome/browser/browser_window.h"
|
| #include "chrome/browser/extensions/extension_apitest.h"
|
| +#include "chrome/browser/task_manager/task_manager.h"
|
| #include "chrome/common/chrome_switches.h"
|
|
|
| IN_PROC_BROWSER_TEST_F(ExtensionApiTest, Processes) {
|
| CommandLine::ForCurrentProcess()->AppendSwitch(
|
| switches::kEnableExperimentalExtensionApis);
|
|
|
| - ASSERT_TRUE(RunExtensionTest("processes")) << message_;
|
| + ASSERT_TRUE(RunExtensionTest("processes/api")) << message_;
|
| }
|
| +
|
| +IN_PROC_BROWSER_TEST_F(ExtensionApiTest, ProcessesVsTaskManager) {
|
| + CommandLine::ForCurrentProcess()->AppendSwitch(
|
| + switches::kEnableExperimentalExtensionApis);
|
| +
|
| + // Ensure task manager is not yet updating
|
| + TaskManagerModel* model = TaskManager::GetInstance()->model();
|
| + EXPECT_EQ(0, model->update_requests_);
|
| + EXPECT_EQ(TaskManagerModel::IDLE, model->update_state_);
|
| +
|
| + // Load extension that adds listener in background page
|
| + ASSERT_TRUE(LoadExtension(
|
| + test_data_dir_.AppendASCII("processes").AppendASCII("onupdated")));
|
| +
|
| + // Ensure the task manager has started updating
|
| + EXPECT_EQ(1, model->update_requests_);
|
| + EXPECT_EQ(TaskManagerModel::TASK_PENDING, model->update_state_);
|
| +
|
| + // Now show the task manager
|
| + browser()->window()->ShowTaskManager();
|
| + EXPECT_EQ(2, model->update_requests_);
|
| + EXPECT_EQ(TaskManagerModel::TASK_PENDING, model->update_state_);
|
| +
|
| + // Unload the extension and check that listener count decreases
|
| + UnloadExtension(last_loaded_extension_id_);
|
| + EXPECT_EQ(1, model->update_requests_);
|
| +}
|
|
|