| 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/embedded_worker_devtools_manager.h" | 5 #include "content/browser/devtools/embedded_worker_devtools_manager.h" |
| 6 | 6 |
| 7 #include "base/memory/scoped_ptr.h" | 7 #include "base/memory/scoped_ptr.h" |
| 8 #include "base/message_loop/message_loop.h" | 8 #include "base/message_loop/message_loop.h" |
| 9 #include "base/run_loop.h" | 9 #include "base/run_loop.h" |
| 10 #include "content/browser/browser_thread_impl.h" | 10 #include "content/browser/browser_thread_impl.h" |
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 106 partition_id_); | 106 partition_id_); |
| 107 | 107 |
| 108 agent_host = manager_->GetDevToolsAgentHostForWorker(1, 1); | 108 agent_host = manager_->GetDevToolsAgentHostForWorker(1, 1); |
| 109 EXPECT_FALSE(agent_host.get()); | 109 EXPECT_FALSE(agent_host.get()); |
| 110 | 110 |
| 111 // Created -> Started -> Destroyed | 111 // Created -> Started -> Destroyed |
| 112 CheckWorkerNotExist(1, 1); | 112 CheckWorkerNotExist(1, 1); |
| 113 manager_->SharedWorkerCreated(1, 1, instance1); | 113 manager_->SharedWorkerCreated(1, 1, instance1); |
| 114 CheckWorkerState(1, 1, WorkerState::WORKER_UNINSPECTED); | 114 CheckWorkerState(1, 1, WorkerState::WORKER_UNINSPECTED); |
| 115 manager_->WorkerReadyForInspection(1, 1); | 115 manager_->WorkerReadyForInspection(1, 1); |
| 116 CheckWorkerState(1, 1, WorkerState::WORKER_UNINSPECTED); | |
| 117 manager_->WorkerContextStarted(1, 1); | 116 manager_->WorkerContextStarted(1, 1); |
| 118 CheckWorkerState(1, 1, WorkerState::WORKER_UNINSPECTED); | 117 CheckWorkerState(1, 1, WorkerState::WORKER_UNINSPECTED); |
| 119 manager_->WorkerDestroyed(1, 1); | 118 manager_->WorkerDestroyed(1, 1); |
| 120 CheckWorkerNotExist(1, 1); | 119 CheckWorkerNotExist(1, 1); |
| 121 | 120 |
| 122 // Created -> GetDevToolsAgentHost -> Started -> Destroyed | 121 // Created -> GetDevToolsAgentHost -> Started -> Destroyed |
| 123 CheckWorkerNotExist(1, 2); | 122 CheckWorkerNotExist(1, 2); |
| 124 manager_->SharedWorkerCreated(1, 2, instance1); | 123 manager_->SharedWorkerCreated(1, 2, instance1); |
| 125 CheckWorkerState(1, 2, WorkerState::WORKER_UNINSPECTED); | 124 CheckWorkerState(1, 2, WorkerState::WORKER_UNINSPECTED); |
| 126 agent_host = manager_->GetDevToolsAgentHostForWorker(1, 2); | 125 agent_host = manager_->GetDevToolsAgentHostForWorker(1, 2); |
| 127 EXPECT_TRUE(agent_host.get()); | 126 EXPECT_TRUE(agent_host.get()); |
| 128 CheckWorkerState(1, 2, WorkerState::WORKER_UNINSPECTED); | 127 CheckWorkerState(1, 2, WorkerState::WORKER_UNINSPECTED); |
| 129 EXPECT_EQ(agent_host.get(), manager_->GetDevToolsAgentHostForWorker(1, 2)); | 128 EXPECT_EQ(agent_host.get(), manager_->GetDevToolsAgentHostForWorker(1, 2)); |
| 130 manager_->WorkerReadyForInspection(1, 2); | 129 manager_->WorkerReadyForInspection(1, 2); |
| 131 CheckWorkerState(1, 2, WorkerState::WORKER_UNINSPECTED); | |
| 132 manager_->WorkerContextStarted(1, 2); | 130 manager_->WorkerContextStarted(1, 2); |
| 133 CheckWorkerState(1, 2, WorkerState::WORKER_UNINSPECTED); | 131 CheckWorkerState(1, 2, WorkerState::WORKER_UNINSPECTED); |
| 134 manager_->WorkerDestroyed(1, 2); | 132 manager_->WorkerDestroyed(1, 2); |
| 135 CheckWorkerState(1, 2, WorkerState::WORKER_TERMINATED); | 133 CheckWorkerState(1, 2, WorkerState::WORKER_TERMINATED); |
| 136 agent_host = NULL; | 134 agent_host = NULL; |
| 137 CheckWorkerNotExist(1, 2); | 135 CheckWorkerNotExist(1, 2); |
| 138 | 136 |
| 139 // Created -> Started -> GetDevToolsAgentHost -> Destroyed | 137 // Created -> Started -> GetDevToolsAgentHost -> Destroyed |
| 140 CheckWorkerNotExist(1, 3); | 138 CheckWorkerNotExist(1, 3); |
| 141 manager_->SharedWorkerCreated(1, 3, instance1); | 139 manager_->SharedWorkerCreated(1, 3, instance1); |
| 142 CheckWorkerState(1, 3, WorkerState::WORKER_UNINSPECTED); | 140 CheckWorkerState(1, 3, WorkerState::WORKER_UNINSPECTED); |
| 143 manager_->WorkerReadyForInspection(1, 3); | 141 manager_->WorkerReadyForInspection(1, 3); |
| 144 CheckWorkerState(1, 3, WorkerState::WORKER_UNINSPECTED); | |
| 145 manager_->WorkerContextStarted(1, 3); | 142 manager_->WorkerContextStarted(1, 3); |
| 146 CheckWorkerState(1, 3, WorkerState::WORKER_UNINSPECTED); | 143 CheckWorkerState(1, 3, WorkerState::WORKER_UNINSPECTED); |
| 147 agent_host = manager_->GetDevToolsAgentHostForWorker(1, 3); | 144 agent_host = manager_->GetDevToolsAgentHostForWorker(1, 3); |
| 148 EXPECT_TRUE(agent_host.get()); | 145 EXPECT_TRUE(agent_host.get()); |
| 149 CheckWorkerState(1, 3, WorkerState::WORKER_UNINSPECTED); | 146 CheckWorkerState(1, 3, WorkerState::WORKER_UNINSPECTED); |
| 150 manager_->WorkerDestroyed(1, 3); | 147 manager_->WorkerDestroyed(1, 3); |
| 151 CheckWorkerState(1, 3, WorkerState::WORKER_TERMINATED); | 148 CheckWorkerState(1, 3, WorkerState::WORKER_TERMINATED); |
| 152 agent_host = NULL; | 149 agent_host = NULL; |
| 153 CheckWorkerNotExist(1, 3); | 150 CheckWorkerNotExist(1, 3); |
| 154 | 151 |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 205 CheckWorkerNotExist(2, 1); | 202 CheckWorkerNotExist(2, 1); |
| 206 manager_->SharedWorkerCreated(2, 1, instance1); | 203 manager_->SharedWorkerCreated(2, 1, instance1); |
| 207 CheckWorkerState(2, 1, WorkerState::WORKER_UNINSPECTED); | 204 CheckWorkerState(2, 1, WorkerState::WORKER_UNINSPECTED); |
| 208 agent_host1 = manager_->GetDevToolsAgentHostForWorker(2, 1); | 205 agent_host1 = manager_->GetDevToolsAgentHostForWorker(2, 1); |
| 209 EXPECT_TRUE(agent_host1.get()); | 206 EXPECT_TRUE(agent_host1.get()); |
| 210 CheckWorkerState(2, 1, WorkerState::WORKER_UNINSPECTED); | 207 CheckWorkerState(2, 1, WorkerState::WORKER_UNINSPECTED); |
| 211 EXPECT_EQ(agent_host1.get(), manager_->GetDevToolsAgentHostForWorker(2, 1)); | 208 EXPECT_EQ(agent_host1.get(), manager_->GetDevToolsAgentHostForWorker(2, 1)); |
| 212 client_host1->InspectAgentHost(agent_host1.get()); | 209 client_host1->InspectAgentHost(agent_host1.get()); |
| 213 CheckWorkerState(2, 1, WorkerState::WORKER_INSPECTED); | 210 CheckWorkerState(2, 1, WorkerState::WORKER_INSPECTED); |
| 214 manager_->WorkerReadyForInspection(2, 1); | 211 manager_->WorkerReadyForInspection(2, 1); |
| 215 CheckWorkerState(2, 1, WorkerState::WORKER_INSPECTED); | |
| 216 manager_->WorkerContextStarted(2, 1); | 212 manager_->WorkerContextStarted(2, 1); |
| 217 CheckWorkerState(2, 1, WorkerState::WORKER_INSPECTED); | 213 CheckWorkerState(2, 1, WorkerState::WORKER_INSPECTED); |
| 218 manager_->WorkerDestroyed(2, 1); | 214 manager_->WorkerDestroyed(2, 1); |
| 219 CheckWorkerState(2, 1, WorkerState::WORKER_TERMINATED); | 215 CheckWorkerState(2, 1, WorkerState::WORKER_TERMINATED); |
| 220 EXPECT_EQ(agent_host1.get(), manager_->GetDevToolsAgentHostForWorker(2, 1)); | 216 EXPECT_EQ(agent_host1.get(), manager_->GetDevToolsAgentHostForWorker(2, 1)); |
| 221 | 217 |
| 222 // Created -> Started -> GetDevToolsAgentHost -> Register -> Destroyed | 218 // Created -> Started -> GetDevToolsAgentHost -> Register -> Destroyed |
| 223 scoped_ptr<TestDevToolsClientHost> client_host2(new TestDevToolsClientHost()); | 219 scoped_ptr<TestDevToolsClientHost> client_host2(new TestDevToolsClientHost()); |
| 224 manager_->SharedWorkerCreated(2, 2, instance2); | 220 manager_->SharedWorkerCreated(2, 2, instance2); |
| 225 CheckWorkerState(2, 2, WorkerState::WORKER_UNINSPECTED); | 221 CheckWorkerState(2, 2, WorkerState::WORKER_UNINSPECTED); |
| 226 manager_->WorkerReadyForInspection(2, 2); | 222 manager_->WorkerReadyForInspection(2, 2); |
| 227 CheckWorkerState(2, 2, WorkerState::WORKER_UNINSPECTED); | |
| 228 manager_->WorkerContextStarted(2, 2); | 223 manager_->WorkerContextStarted(2, 2); |
| 229 CheckWorkerState(2, 2, WorkerState::WORKER_UNINSPECTED); | 224 CheckWorkerState(2, 2, WorkerState::WORKER_UNINSPECTED); |
| 230 agent_host2 = manager_->GetDevToolsAgentHostForWorker(2, 2); | 225 agent_host2 = manager_->GetDevToolsAgentHostForWorker(2, 2); |
| 231 EXPECT_TRUE(agent_host2.get()); | 226 EXPECT_TRUE(agent_host2.get()); |
| 232 EXPECT_NE(agent_host1.get(), agent_host2.get()); | 227 EXPECT_NE(agent_host1.get(), agent_host2.get()); |
| 233 EXPECT_EQ(agent_host2.get(), manager_->GetDevToolsAgentHostForWorker(2, 2)); | 228 EXPECT_EQ(agent_host2.get(), manager_->GetDevToolsAgentHostForWorker(2, 2)); |
| 234 CheckWorkerState(2, 2, WorkerState::WORKER_UNINSPECTED); | 229 CheckWorkerState(2, 2, WorkerState::WORKER_UNINSPECTED); |
| 235 client_host2->InspectAgentHost(agent_host2.get()); | 230 client_host2->InspectAgentHost(agent_host2.get()); |
| 236 CheckWorkerState(2, 2, WorkerState::WORKER_INSPECTED); | 231 CheckWorkerState(2, 2, WorkerState::WORKER_INSPECTED); |
| 237 manager_->WorkerDestroyed(2, 2); | 232 manager_->WorkerDestroyed(2, 2); |
| 238 CheckWorkerState(2, 2, WorkerState::WORKER_TERMINATED); | 233 CheckWorkerState(2, 2, WorkerState::WORKER_TERMINATED); |
| 239 EXPECT_EQ(agent_host2.get(), manager_->GetDevToolsAgentHostForWorker(2, 2)); | 234 EXPECT_EQ(agent_host2.get(), manager_->GetDevToolsAgentHostForWorker(2, 2)); |
| 240 | 235 |
| 241 // Re-created -> Started -> ClientHostClosing -> Destroyed | 236 // Re-created -> Started -> ClientHostClosing -> Destroyed |
| 242 CheckWorkerState(2, 1, WorkerState::WORKER_TERMINATED); | 237 CheckWorkerState(2, 1, WorkerState::WORKER_TERMINATED); |
| 243 manager_->SharedWorkerCreated(2, 3, instance1); | 238 manager_->SharedWorkerCreated(2, 3, instance1); |
| 244 CheckWorkerNotExist(2, 1); | 239 CheckWorkerNotExist(2, 1); |
| 245 CheckWorkerState(2, 3, WorkerState::WORKER_PAUSED_FOR_REATTACH); | 240 CheckWorkerState(2, 3, WorkerState::WORKER_PAUSED_FOR_REATTACH); |
| 246 EXPECT_EQ(agent_host1.get(), manager_->GetDevToolsAgentHostForWorker(2, 3)); | 241 EXPECT_EQ(agent_host1.get(), manager_->GetDevToolsAgentHostForWorker(2, 3)); |
| 247 manager_->WorkerReadyForInspection(2, 3); | 242 manager_->WorkerReadyForInspection(2, 3); |
| 248 CheckWorkerState(2, 3, WorkerState::WORKER_PAUSED_FOR_REATTACH); | |
| 249 manager_->WorkerContextStarted(2, 3); | 243 manager_->WorkerContextStarted(2, 3); |
| 250 CheckWorkerState(2, 3, WorkerState::WORKER_INSPECTED); | 244 CheckWorkerState(2, 3, WorkerState::WORKER_INSPECTED); |
| 251 client_host1->InspectAgentHost(NULL); | 245 client_host1->InspectAgentHost(NULL); |
| 252 manager_->WorkerDestroyed(2, 3); | 246 manager_->WorkerDestroyed(2, 3); |
| 253 CheckWorkerState(2, 3, WorkerState::WORKER_TERMINATED); | 247 CheckWorkerState(2, 3, WorkerState::WORKER_TERMINATED); |
| 254 agent_host1 = NULL; | 248 agent_host1 = NULL; |
| 255 CheckWorkerNotExist(2, 3); | 249 CheckWorkerNotExist(2, 3); |
| 256 | 250 |
| 257 // Re-created -> Destroyed | 251 // Re-created -> Destroyed |
| 258 CheckWorkerState(2, 2, WorkerState::WORKER_TERMINATED); | 252 CheckWorkerState(2, 2, WorkerState::WORKER_TERMINATED); |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 302 manager_->SharedWorkerCreated(3, 2, instance); | 296 manager_->SharedWorkerCreated(3, 2, instance); |
| 303 CheckWorkerState(3, 2, WorkerState::WORKER_UNINSPECTED); | 297 CheckWorkerState(3, 2, WorkerState::WORKER_UNINSPECTED); |
| 304 agent_host = NULL; | 298 agent_host = NULL; |
| 305 CheckWorkerState(3, 2, WorkerState::WORKER_UNINSPECTED); | 299 CheckWorkerState(3, 2, WorkerState::WORKER_UNINSPECTED); |
| 306 manager_->WorkerDestroyed(3, 2); | 300 manager_->WorkerDestroyed(3, 2); |
| 307 CheckWorkerNotExist(3, 2); | 301 CheckWorkerNotExist(3, 2); |
| 308 CheckWorkerCount(0); | 302 CheckWorkerCount(0); |
| 309 } | 303 } |
| 310 | 304 |
| 311 } // namespace content | 305 } // namespace content |
| OLD | NEW |