| OLD | NEW |
| 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 "content/browser/devtools/shared_worker_devtools_manager.h" | 5 #include "content/browser/devtools/shared_worker_devtools_manager.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include "base/macros.h" | 9 #include "base/macros.h" |
| 10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 95 scoped_ptr<WorkerStoragePartition> partition_; | 95 scoped_ptr<WorkerStoragePartition> partition_; |
| 96 const WorkerStoragePartitionId partition_id_; | 96 const WorkerStoragePartitionId partition_id_; |
| 97 SharedWorkerDevToolsManager* manager_; | 97 SharedWorkerDevToolsManager* manager_; |
| 98 }; | 98 }; |
| 99 | 99 |
| 100 TEST_F(SharedWorkerDevToolsManagerTest, BasicTest) { | 100 TEST_F(SharedWorkerDevToolsManagerTest, BasicTest) { |
| 101 scoped_refptr<DevToolsAgentHostImpl> agent_host; | 101 scoped_refptr<DevToolsAgentHostImpl> agent_host; |
| 102 | 102 |
| 103 SharedWorkerInstance instance1( | 103 SharedWorkerInstance instance1( |
| 104 GURL("http://example.com/w.js"), base::string16(), base::string16(), | 104 GURL("http://example.com/w.js"), base::string16(), base::string16(), |
| 105 blink::WebContentSecurityPolicyTypeReport, | 105 blink::WebContentSecurityPolicyTypeReport, blink::WebAddressSpacePublic, |
| 106 browser_context_->GetResourceContext(), partition_id_, | 106 browser_context_->GetResourceContext(), partition_id_, |
| 107 blink::WebSharedWorkerCreationContextTypeNonsecure); | 107 blink::WebSharedWorkerCreationContextTypeNonsecure); |
| 108 | 108 |
| 109 agent_host = manager_->GetDevToolsAgentHostForWorker(1, 1); | 109 agent_host = manager_->GetDevToolsAgentHostForWorker(1, 1); |
| 110 EXPECT_FALSE(agent_host.get()); | 110 EXPECT_FALSE(agent_host.get()); |
| 111 | 111 |
| 112 // Created -> Started -> Destroyed | 112 // Created -> Started -> Destroyed |
| 113 CheckWorkerNotExist(1, 1); | 113 CheckWorkerNotExist(1, 1); |
| 114 manager_->WorkerCreated(1, 1, instance1); | 114 manager_->WorkerCreated(1, 1, instance1); |
| 115 CheckWorkerState(1, 1, WorkerState::WORKER_UNINSPECTED); | 115 CheckWorkerState(1, 1, WorkerState::WORKER_UNINSPECTED); |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 177 manager_->WorkerDestroyed(1, 6); | 177 manager_->WorkerDestroyed(1, 6); |
| 178 CheckWorkerNotExist(1, 6); | 178 CheckWorkerNotExist(1, 6); |
| 179 } | 179 } |
| 180 | 180 |
| 181 TEST_F(SharedWorkerDevToolsManagerTest, AttachTest) { | 181 TEST_F(SharedWorkerDevToolsManagerTest, AttachTest) { |
| 182 scoped_refptr<DevToolsAgentHostImpl> agent_host1; | 182 scoped_refptr<DevToolsAgentHostImpl> agent_host1; |
| 183 scoped_refptr<DevToolsAgentHostImpl> agent_host2; | 183 scoped_refptr<DevToolsAgentHostImpl> agent_host2; |
| 184 | 184 |
| 185 SharedWorkerInstance instance1( | 185 SharedWorkerInstance instance1( |
| 186 GURL("http://example.com/w1.js"), base::string16(), base::string16(), | 186 GURL("http://example.com/w1.js"), base::string16(), base::string16(), |
| 187 blink::WebContentSecurityPolicyTypeReport, | 187 blink::WebContentSecurityPolicyTypeReport, blink::WebAddressSpacePublic, |
| 188 browser_context_->GetResourceContext(), partition_id_, | 188 browser_context_->GetResourceContext(), partition_id_, |
| 189 blink::WebSharedWorkerCreationContextTypeNonsecure); | 189 blink::WebSharedWorkerCreationContextTypeNonsecure); |
| 190 SharedWorkerInstance instance2( | 190 SharedWorkerInstance instance2( |
| 191 GURL("http://example.com/w2.js"), base::string16(), base::string16(), | 191 GURL("http://example.com/w2.js"), base::string16(), base::string16(), |
| 192 blink::WebContentSecurityPolicyTypeReport, | 192 blink::WebContentSecurityPolicyTypeReport, blink::WebAddressSpacePublic, |
| 193 browser_context_->GetResourceContext(), partition_id_, | 193 browser_context_->GetResourceContext(), partition_id_, |
| 194 blink::WebSharedWorkerCreationContextTypeNonsecure); | 194 blink::WebSharedWorkerCreationContextTypeNonsecure); |
| 195 | 195 |
| 196 // Created -> GetDevToolsAgentHost -> Register -> Started -> Destroyed | 196 // Created -> GetDevToolsAgentHost -> Register -> Started -> Destroyed |
| 197 scoped_ptr<TestDevToolsClientHost> client_host1(new TestDevToolsClientHost()); | 197 scoped_ptr<TestDevToolsClientHost> client_host1(new TestDevToolsClientHost()); |
| 198 CheckWorkerNotExist(2, 1); | 198 CheckWorkerNotExist(2, 1); |
| 199 manager_->WorkerCreated(2, 1, instance1); | 199 manager_->WorkerCreated(2, 1, instance1); |
| 200 CheckWorkerState(2, 1, WorkerState::WORKER_UNINSPECTED); | 200 CheckWorkerState(2, 1, WorkerState::WORKER_UNINSPECTED); |
| 201 agent_host1 = manager_->GetDevToolsAgentHostForWorker(2, 1); | 201 agent_host1 = manager_->GetDevToolsAgentHostForWorker(2, 1); |
| 202 EXPECT_TRUE(agent_host1.get()); | 202 EXPECT_TRUE(agent_host1.get()); |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 260 CheckWorkerCount(1); | 260 CheckWorkerCount(1); |
| 261 agent_host2 = NULL; | 261 agent_host2 = NULL; |
| 262 CheckWorkerCount(1); | 262 CheckWorkerCount(1); |
| 263 manager_->WorkerDestroyed(2, 5); | 263 manager_->WorkerDestroyed(2, 5); |
| 264 CheckWorkerCount(0); | 264 CheckWorkerCount(0); |
| 265 } | 265 } |
| 266 | 266 |
| 267 TEST_F(SharedWorkerDevToolsManagerTest, ReattachTest) { | 267 TEST_F(SharedWorkerDevToolsManagerTest, ReattachTest) { |
| 268 SharedWorkerInstance instance( | 268 SharedWorkerInstance instance( |
| 269 GURL("http://example.com/w3.js"), base::string16(), base::string16(), | 269 GURL("http://example.com/w3.js"), base::string16(), base::string16(), |
| 270 blink::WebContentSecurityPolicyTypeReport, | 270 blink::WebContentSecurityPolicyTypeReport, blink::WebAddressSpacePublic, |
| 271 browser_context_->GetResourceContext(), partition_id_, | 271 browser_context_->GetResourceContext(), partition_id_, |
| 272 blink::WebSharedWorkerCreationContextTypeNonsecure); | 272 blink::WebSharedWorkerCreationContextTypeNonsecure); |
| 273 scoped_ptr<TestDevToolsClientHost> client_host(new TestDevToolsClientHost()); | 273 scoped_ptr<TestDevToolsClientHost> client_host(new TestDevToolsClientHost()); |
| 274 // Created -> GetDevToolsAgentHost -> Register -> Destroyed | 274 // Created -> GetDevToolsAgentHost -> Register -> Destroyed |
| 275 manager_->WorkerCreated(3, 1, instance); | 275 manager_->WorkerCreated(3, 1, instance); |
| 276 CheckWorkerState(3, 1, WorkerState::WORKER_UNINSPECTED); | 276 CheckWorkerState(3, 1, WorkerState::WORKER_UNINSPECTED); |
| 277 scoped_refptr<DevToolsAgentHost> agent_host( | 277 scoped_refptr<DevToolsAgentHost> agent_host( |
| 278 manager_->GetDevToolsAgentHostForWorker(3, 1)); | 278 manager_->GetDevToolsAgentHostForWorker(3, 1)); |
| 279 EXPECT_TRUE(agent_host.get()); | 279 EXPECT_TRUE(agent_host.get()); |
| 280 CheckWorkerState(3, 1, WorkerState::WORKER_UNINSPECTED); | 280 CheckWorkerState(3, 1, WorkerState::WORKER_UNINSPECTED); |
| 281 client_host->InspectAgentHost(agent_host.get()); | 281 client_host->InspectAgentHost(agent_host.get()); |
| 282 CheckWorkerState(3, 1, WorkerState::WORKER_INSPECTED); | 282 CheckWorkerState(3, 1, WorkerState::WORKER_INSPECTED); |
| 283 manager_->WorkerDestroyed(3, 1); | 283 manager_->WorkerDestroyed(3, 1); |
| 284 CheckWorkerState(3, 1, WorkerState::WORKER_TERMINATED); | 284 CheckWorkerState(3, 1, WorkerState::WORKER_TERMINATED); |
| 285 // ClientHostClosing -> Re-created -> release agent_host -> Destroyed | 285 // ClientHostClosing -> Re-created -> release agent_host -> Destroyed |
| 286 client_host->InspectAgentHost(NULL); | 286 client_host->InspectAgentHost(NULL); |
| 287 CheckWorkerState(3, 1, WorkerState::WORKER_TERMINATED); | 287 CheckWorkerState(3, 1, WorkerState::WORKER_TERMINATED); |
| 288 manager_->WorkerCreated(3, 2, instance); | 288 manager_->WorkerCreated(3, 2, instance); |
| 289 CheckWorkerState(3, 2, WorkerState::WORKER_UNINSPECTED); | 289 CheckWorkerState(3, 2, WorkerState::WORKER_UNINSPECTED); |
| 290 agent_host = NULL; | 290 agent_host = NULL; |
| 291 CheckWorkerState(3, 2, WorkerState::WORKER_UNINSPECTED); | 291 CheckWorkerState(3, 2, WorkerState::WORKER_UNINSPECTED); |
| 292 manager_->WorkerDestroyed(3, 2); | 292 manager_->WorkerDestroyed(3, 2); |
| 293 CheckWorkerNotExist(3, 2); | 293 CheckWorkerNotExist(3, 2); |
| 294 CheckWorkerCount(0); | 294 CheckWorkerCount(0); |
| 295 } | 295 } |
| 296 | 296 |
| 297 } // namespace content | 297 } // namespace content |
| OLD | NEW |