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

Unified Diff: content/browser/devtools/embedded_worker_devtools_manager_unittest.cc

Issue 449043002: [DevTools] Make DevTools clients talk directly to DevToolsAgentHost instead of using DevToolsManage… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fixed DetachAllClients Created 6 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/devtools/embedded_worker_devtools_manager_unittest.cc
diff --git a/content/browser/devtools/embedded_worker_devtools_manager_unittest.cc b/content/browser/devtools/embedded_worker_devtools_manager_unittest.cc
index 347b6f39f4db067fa6fd517a3f2d5915966a6100..5910b053b085f9680d282fd97dd06ff3e27e5d8a 100644
--- a/content/browser/devtools/embedded_worker_devtools_manager_unittest.cc
+++ b/content/browser/devtools/embedded_worker_devtools_manager_unittest.cc
@@ -8,28 +8,34 @@
#include "base/message_loop/message_loop.h"
#include "base/run_loop.h"
#include "content/browser/browser_thread_impl.h"
-#include "content/browser/devtools/devtools_manager_impl.h"
+#include "content/browser/devtools/devtools_agent_host_impl.h"
#include "content/browser/devtools/embedded_worker_devtools_agent_host.h"
#include "content/browser/shared_worker/shared_worker_instance.h"
#include "content/browser/shared_worker/worker_storage_partition.h"
-#include "content/public/browser/devtools_agent_host.h"
-#include "content/public/browser/devtools_client_host.h"
#include "content/public/test/test_browser_context.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace content {
namespace {
-class TestDevToolsClientHost : public DevToolsClientHost {
+class TestDevToolsClientHost : public DevToolsAgentHostClient {
public:
TestDevToolsClientHost() {}
virtual ~TestDevToolsClientHost() {}
- virtual void DispatchOnInspectorFrontend(
- const std::string& message) OVERRIDE {}
- virtual void InspectedContentsClosing() OVERRIDE {}
- virtual void ReplacedWithAnotherClient() OVERRIDE {}
-
+ virtual void DispatchProtocolMessage(
+ DevToolsAgentHost* agent_host, const std::string& message) OVERRIDE {}
+ virtual void AgentHostClosed(
+ DevToolsAgentHost* agent_host, bool replaced) OVERRIDE {}
+
+ void InspectAgentHost(DevToolsAgentHost* agent_host) {
+ if (agent_host_)
+ agent_host_->DetachClient();
+ agent_host_ = agent_host;
+ if (agent_host_)
+ agent_host_->AttachClient(this);
+ }
private:
+ scoped_refptr<DevToolsAgentHost> agent_host_;
DISALLOW_COPY_AND_ASSIGN(TestDevToolsClientHost);
};
}
@@ -81,16 +87,6 @@ class EmbeddedWorkerDevToolsManagerTest : public testing::Test {
EXPECT_EQ(size, manager_->workers_.size());
}
- void RegisterDevToolsClientHostFor(DevToolsAgentHost* agent_host,
- DevToolsClientHost* client_host) {
- DevToolsManagerImpl::GetInstance()->RegisterDevToolsClientHostFor(
- agent_host, client_host);
- }
-
- void ClientHostClosing(DevToolsClientHost* client_host) {
- DevToolsManagerImpl::GetInstance()->ClientHostClosing(client_host);
- }
-
base::MessageLoopForIO message_loop_;
BrowserThreadImpl ui_thread_;
scoped_ptr<TestBrowserContext> browser_context_;
@@ -100,7 +96,7 @@ class EmbeddedWorkerDevToolsManagerTest : public testing::Test {
};
TEST_F(EmbeddedWorkerDevToolsManagerTest, BasicTest) {
- scoped_refptr<DevToolsAgentHost> agent_host;
+ scoped_refptr<DevToolsAgentHostImpl> agent_host;
SharedWorkerInstance instance1(GURL("http://example.com/w.js"),
base::string16(),
@@ -182,8 +178,8 @@ TEST_F(EmbeddedWorkerDevToolsManagerTest, BasicTest) {
}
TEST_F(EmbeddedWorkerDevToolsManagerTest, AttachTest) {
- scoped_refptr<DevToolsAgentHost> agent_host1;
- scoped_refptr<DevToolsAgentHost> agent_host2;
+ scoped_refptr<DevToolsAgentHostImpl> agent_host1;
+ scoped_refptr<DevToolsAgentHostImpl> agent_host2;
SharedWorkerInstance instance1(GURL("http://example.com/w1.js"),
base::string16(),
@@ -207,7 +203,7 @@ TEST_F(EmbeddedWorkerDevToolsManagerTest, AttachTest) {
EXPECT_TRUE(agent_host1.get());
CheckWorkerState(2, 1, WorkerState::WORKER_UNINSPECTED);
EXPECT_EQ(agent_host1.get(), manager_->GetDevToolsAgentHostForWorker(2, 1));
- RegisterDevToolsClientHostFor(agent_host1.get(), client_host1.get());
+ client_host1->InspectAgentHost(agent_host1.get());
CheckWorkerState(2, 1, WorkerState::WORKER_INSPECTED);
manager_->WorkerContextStarted(2, 1);
CheckWorkerState(2, 1, WorkerState::WORKER_INSPECTED);
@@ -226,7 +222,7 @@ TEST_F(EmbeddedWorkerDevToolsManagerTest, AttachTest) {
EXPECT_NE(agent_host1.get(), agent_host2.get());
EXPECT_EQ(agent_host2.get(), manager_->GetDevToolsAgentHostForWorker(2, 2));
CheckWorkerState(2, 2, WorkerState::WORKER_UNINSPECTED);
- RegisterDevToolsClientHostFor(agent_host2.get(), client_host2.get());
+ client_host2->InspectAgentHost(agent_host2);
CheckWorkerState(2, 2, WorkerState::WORKER_INSPECTED);
manager_->WorkerDestroyed(2, 2);
CheckWorkerState(2, 2, WorkerState::WORKER_TERMINATED);
@@ -240,7 +236,7 @@ TEST_F(EmbeddedWorkerDevToolsManagerTest, AttachTest) {
EXPECT_EQ(agent_host1.get(), manager_->GetDevToolsAgentHostForWorker(2, 3));
manager_->WorkerContextStarted(2, 3);
CheckWorkerState(2, 3, WorkerState::WORKER_INSPECTED);
- ClientHostClosing(client_host1.get());
+ client_host1->InspectAgentHost(NULL);
manager_->WorkerDestroyed(2, 3);
CheckWorkerState(2, 3, WorkerState::WORKER_TERMINATED);
agent_host1 = NULL;
@@ -261,7 +257,7 @@ TEST_F(EmbeddedWorkerDevToolsManagerTest, AttachTest) {
CheckWorkerNotExist(2, 2);
CheckWorkerState(2, 5, WorkerState::WORKER_PAUSED_FOR_REATTACH);
EXPECT_EQ(agent_host2.get(), manager_->GetDevToolsAgentHostForWorker(2, 5));
- ClientHostClosing(client_host2.get());
+ client_host2->InspectAgentHost(NULL);
CheckWorkerCount(1);
agent_host2 = NULL;
CheckWorkerCount(1);
@@ -284,12 +280,12 @@ TEST_F(EmbeddedWorkerDevToolsManagerTest, ReattachTest) {
manager_->GetDevToolsAgentHostForWorker(3, 1));
EXPECT_TRUE(agent_host.get());
CheckWorkerState(3, 1, WorkerState::WORKER_UNINSPECTED);
- RegisterDevToolsClientHostFor(agent_host.get(), client_host.get());
+ client_host->InspectAgentHost(agent_host.get());
CheckWorkerState(3, 1, WorkerState::WORKER_INSPECTED);
manager_->WorkerDestroyed(3, 1);
CheckWorkerState(3, 1, WorkerState::WORKER_TERMINATED);
// ClientHostClosing -> Re-created -> release agent_host -> Destroyed
- ClientHostClosing(client_host.get());
+ client_host->InspectAgentHost(NULL);
CheckWorkerState(3, 1, WorkerState::WORKER_TERMINATED);
manager_->SharedWorkerCreated(3, 2, instance);
CheckWorkerState(3, 2, WorkerState::WORKER_UNINSPECTED);
« no previous file with comments | « content/browser/devtools/embedded_worker_devtools_manager.cc ('k') | content/browser/devtools/forwarding_agent_host.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698