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 <map> | 5 #include <map> |
6 #include <set> | 6 #include <set> |
7 #include <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/atomic_sequence_num.h" | 9 #include "base/atomic_sequence_num.h" |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
278 name, | 278 name, |
279 document_id, | 279 document_id, |
280 render_frame_route_id, | 280 render_frame_route_id, |
281 &route_id_); | 281 &route_id_); |
282 } | 282 } |
283 void SendQueueMessages() { | 283 void SendQueueMessages() { |
284 EXPECT_TRUE(renderer_host_->OnMessageReceived( | 284 EXPECT_TRUE(renderer_host_->OnMessageReceived( |
285 new MessagePortHostMsg_QueueMessages(remote_port_id_))); | 285 new MessagePortHostMsg_QueueMessages(remote_port_id_))); |
286 } | 286 } |
287 void SendPostMessage(std::string data) { | 287 void SendPostMessage(std::string data) { |
288 const std::vector<int> empty_ids; | 288 const std::vector<TransferredMessagePort> empty_ports; |
289 EXPECT_TRUE( | 289 EXPECT_TRUE( |
290 renderer_host_->OnMessageReceived(new MessagePortHostMsg_PostMessage( | 290 renderer_host_->OnMessageReceived(new MessagePortHostMsg_PostMessage( |
291 local_port_id_, | 291 local_port_id_, |
292 MessagePortMessage(base::ASCIIToUTF16(data)), empty_ids))); | 292 MessagePortMessage(base::ASCIIToUTF16(data)), empty_ports))); |
293 } | 293 } |
294 void SendConnect() { | 294 void SendConnect() { |
295 EXPECT_TRUE( | 295 EXPECT_TRUE( |
296 renderer_host_->OnMessageReceived(new ViewHostMsg_ForwardToWorker( | 296 renderer_host_->OnMessageReceived(new ViewHostMsg_ForwardToWorker( |
297 WorkerMsg_Connect(route_id_, remote_port_id_, MSG_ROUTING_NONE)))); | 297 WorkerMsg_Connect(route_id_, remote_port_id_, MSG_ROUTING_NONE)))); |
298 } | 298 } |
299 void SendSendQueuedMessages( | 299 void SendSendQueuedMessages( |
300 const std::vector<QueuedMessage>& queued_messages) { | 300 const std::vector<QueuedMessage>& queued_messages) { |
301 EXPECT_TRUE(renderer_host_->OnMessageReceived( | 301 EXPECT_TRUE(renderer_host_->OnMessageReceived( |
302 new MessagePortHostMsg_SendQueuedMessages(remote_port_id_, | 302 new MessagePortHostMsg_SendQueuedMessages(remote_port_id_, |
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
460 | 460 |
461 // When SharedWorkerConnector side sends MessagePortHostMsg_PostMessage, | 461 // When SharedWorkerConnector side sends MessagePortHostMsg_PostMessage, |
462 // SharedWorker side shuold receive MessagePortMsg_Message. | 462 // SharedWorker side shuold receive MessagePortMsg_Message. |
463 connector->SendPostMessage("test1"); | 463 connector->SendPostMessage("test1"); |
464 EXPECT_EQ(1U, renderer_host->QueuedMessageCount()); | 464 EXPECT_EQ(1U, renderer_host->QueuedMessageCount()); |
465 CheckMessagePortMsgMessage( | 465 CheckMessagePortMsgMessage( |
466 renderer_host.get(), worker_msg_port_route_id, "test1"); | 466 renderer_host.get(), worker_msg_port_route_id, "test1"); |
467 | 467 |
468 // When SharedWorker side sends MessagePortHostMsg_PostMessage, | 468 // When SharedWorker side sends MessagePortHostMsg_PostMessage, |
469 // SharedWorkerConnector side shuold receive MessagePortMsg_Message. | 469 // SharedWorkerConnector side shuold receive MessagePortMsg_Message. |
470 const std::vector<int> empty_ids; | 470 const std::vector<TransferredMessagePort> empty_ports; |
471 EXPECT_TRUE( | 471 EXPECT_TRUE( |
472 renderer_host->OnMessageReceived(new MessagePortHostMsg_PostMessage( | 472 renderer_host->OnMessageReceived(new MessagePortHostMsg_PostMessage( |
473 connector->remote_port_id(), | 473 connector->remote_port_id(), |
474 MessagePortMessage(base::ASCIIToUTF16("test2")), empty_ids))); | 474 MessagePortMessage(base::ASCIIToUTF16("test2")), empty_ports))); |
475 EXPECT_EQ(1U, renderer_host->QueuedMessageCount()); | 475 EXPECT_EQ(1U, renderer_host->QueuedMessageCount()); |
476 CheckMessagePortMsgMessage( | 476 CheckMessagePortMsgMessage( |
477 renderer_host.get(), connector->local_port_route_id(), "test2"); | 477 renderer_host.get(), connector->local_port_route_id(), "test2"); |
478 | 478 |
479 // UpdateWorkerDependency should not be called. | 479 // UpdateWorkerDependency should not be called. |
480 EXPECT_EQ(0, s_update_worker_dependency_call_count_); | 480 EXPECT_EQ(0, s_update_worker_dependency_call_count_); |
481 } | 481 } |
482 | 482 |
483 TEST_F(SharedWorkerServiceImplTest, TwoRendererTest) { | 483 TEST_F(SharedWorkerServiceImplTest, TwoRendererTest) { |
484 // The first renderer host. | 484 // The first renderer host. |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
557 | 557 |
558 // When SharedWorkerConnector side sends MessagePortHostMsg_PostMessage, | 558 // When SharedWorkerConnector side sends MessagePortHostMsg_PostMessage, |
559 // SharedWorker side shuold receive MessagePortMsg_Message. | 559 // SharedWorker side shuold receive MessagePortMsg_Message. |
560 connector0->SendPostMessage("test1"); | 560 connector0->SendPostMessage("test1"); |
561 EXPECT_EQ(1U, renderer_host0->QueuedMessageCount()); | 561 EXPECT_EQ(1U, renderer_host0->QueuedMessageCount()); |
562 CheckMessagePortMsgMessage( | 562 CheckMessagePortMsgMessage( |
563 renderer_host0.get(), worker_msg_port_route_id1, "test1"); | 563 renderer_host0.get(), worker_msg_port_route_id1, "test1"); |
564 | 564 |
565 // When SharedWorker side sends MessagePortHostMsg_PostMessage, | 565 // When SharedWorker side sends MessagePortHostMsg_PostMessage, |
566 // SharedWorkerConnector side shuold receive MessagePortMsg_Message. | 566 // SharedWorkerConnector side shuold receive MessagePortMsg_Message. |
567 const std::vector<int> empty_ids; | 567 const std::vector<TransferredMessagePort> empty_ports; |
568 EXPECT_TRUE( | 568 EXPECT_TRUE( |
569 renderer_host0->OnMessageReceived(new MessagePortHostMsg_PostMessage( | 569 renderer_host0->OnMessageReceived(new MessagePortHostMsg_PostMessage( |
570 connector0->remote_port_id(), | 570 connector0->remote_port_id(), |
571 MessagePortMessage(base::ASCIIToUTF16("test2")), empty_ids))); | 571 MessagePortMessage(base::ASCIIToUTF16("test2")), empty_ports))); |
572 EXPECT_EQ(1U, renderer_host0->QueuedMessageCount()); | 572 EXPECT_EQ(1U, renderer_host0->QueuedMessageCount()); |
573 CheckMessagePortMsgMessage( | 573 CheckMessagePortMsgMessage( |
574 renderer_host0.get(), connector0->local_port_route_id(), "test2"); | 574 renderer_host0.get(), connector0->local_port_route_id(), "test2"); |
575 | 575 |
576 // The second renderer host. | 576 // The second renderer host. |
577 scoped_ptr<MockRendererProcessHost> renderer_host1( | 577 scoped_ptr<MockRendererProcessHost> renderer_host1( |
578 new MockRendererProcessHost(kProcessIDs[1], | 578 new MockRendererProcessHost(kProcessIDs[1], |
579 browser_context_->GetResourceContext(), | 579 browser_context_->GetResourceContext(), |
580 *partition_.get())); | 580 *partition_.get())); |
581 scoped_ptr<MockSharedWorkerConnector> connector1( | 581 scoped_ptr<MockSharedWorkerConnector> connector1( |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
640 connector1->SendPostMessage("test3"); | 640 connector1->SendPostMessage("test3"); |
641 EXPECT_EQ(1U, renderer_host0->QueuedMessageCount()); | 641 EXPECT_EQ(1U, renderer_host0->QueuedMessageCount()); |
642 CheckMessagePortMsgMessage( | 642 CheckMessagePortMsgMessage( |
643 renderer_host0.get(), worker_msg_port_route_id2, "test3"); | 643 renderer_host0.get(), worker_msg_port_route_id2, "test3"); |
644 | 644 |
645 // When SharedWorker side sends MessagePortHostMsg_PostMessage, | 645 // When SharedWorker side sends MessagePortHostMsg_PostMessage, |
646 // SharedWorkerConnector side shuold receive MessagePortMsg_Message. | 646 // SharedWorkerConnector side shuold receive MessagePortMsg_Message. |
647 EXPECT_TRUE( | 647 EXPECT_TRUE( |
648 renderer_host0->OnMessageReceived(new MessagePortHostMsg_PostMessage( | 648 renderer_host0->OnMessageReceived(new MessagePortHostMsg_PostMessage( |
649 connector1->remote_port_id(), | 649 connector1->remote_port_id(), |
650 MessagePortMessage(base::ASCIIToUTF16("test4")), empty_ids))); | 650 MessagePortMessage(base::ASCIIToUTF16("test4")), empty_ports))); |
651 EXPECT_EQ(1U, renderer_host1->QueuedMessageCount()); | 651 EXPECT_EQ(1U, renderer_host1->QueuedMessageCount()); |
652 CheckMessagePortMsgMessage( | 652 CheckMessagePortMsgMessage( |
653 renderer_host1.get(), connector1->local_port_route_id(), "test4"); | 653 renderer_host1.get(), connector1->local_port_route_id(), "test4"); |
654 | 654 |
655 EXPECT_EQ(1, s_update_worker_dependency_call_count_); | 655 EXPECT_EQ(1, s_update_worker_dependency_call_count_); |
656 renderer_host1.reset(); | 656 renderer_host1.reset(); |
657 // UpdateWorkerDependency should be called. | 657 // UpdateWorkerDependency should be called. |
658 EXPECT_EQ(2, s_update_worker_dependency_call_count_); | 658 EXPECT_EQ(2, s_update_worker_dependency_call_count_); |
659 EXPECT_EQ(0U, s_worker_dependency_added_ids_.size()); | 659 EXPECT_EQ(0U, s_worker_dependency_added_ids_.size()); |
660 EXPECT_EQ(1U, s_worker_dependency_removed_ids_.size()); | 660 EXPECT_EQ(1U, s_worker_dependency_removed_ids_.size()); |
(...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
909 kDocumentIDs[2], | 909 kDocumentIDs[2], |
910 kRenderFrameRouteIDs[2]); | 910 kRenderFrameRouteIDs[2]); |
911 EXPECT_NE(MSG_ROUTING_NONE, connector2->route_id()); | 911 EXPECT_NE(MSG_ROUTING_NONE, connector2->route_id()); |
912 EXPECT_EQ(0U, renderer_host2->QueuedMessageCount()); | 912 EXPECT_EQ(0U, renderer_host2->QueuedMessageCount()); |
913 RunAllPendingInMessageLoop(); | 913 RunAllPendingInMessageLoop(); |
914 EXPECT_EQ(1U, renderer_host2->QueuedMessageCount()); | 914 EXPECT_EQ(1U, renderer_host2->QueuedMessageCount()); |
915 CheckViewMsgWorkerCreated(renderer_host2.get(), connector2.get()); | 915 CheckViewMsgWorkerCreated(renderer_host2.get(), connector2.get()); |
916 } | 916 } |
917 | 917 |
918 } // namespace content | 918 } // namespace content |
OLD | NEW |