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 "media/cast/net/udp_transport.h" | 5 #include "media/cast/net/udp_transport.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 | 58 |
59 net::IPEndPoint free_local_port1 = test::GetFreeLocalPort(); | 59 net::IPEndPoint free_local_port1 = test::GetFreeLocalPort(); |
60 net::IPEndPoint free_local_port2 = test::GetFreeLocalPort(); | 60 net::IPEndPoint free_local_port2 = test::GetFreeLocalPort(); |
61 net::IPAddressNumber empty_addr_number; | 61 net::IPAddressNumber empty_addr_number; |
62 net::ParseIPLiteralToNumber("0.0.0.0", &empty_addr_number); | 62 net::ParseIPLiteralToNumber("0.0.0.0", &empty_addr_number); |
63 | 63 |
64 UdpTransport send_transport(NULL, | 64 UdpTransport send_transport(NULL, |
65 message_loop.message_loop_proxy(), | 65 message_loop.message_loop_proxy(), |
66 free_local_port1, | 66 free_local_port1, |
67 free_local_port2, | 67 free_local_port2, |
| 68 65536, |
68 base::Bind(&UpdateCastTransportStatus)); | 69 base::Bind(&UpdateCastTransportStatus)); |
69 UdpTransport recv_transport(NULL, | 70 UdpTransport recv_transport(NULL, |
70 message_loop.message_loop_proxy(), | 71 message_loop.message_loop_proxy(), |
71 free_local_port2, | 72 free_local_port2, |
72 net::IPEndPoint(empty_addr_number, 0), | 73 net::IPEndPoint(empty_addr_number, 0), |
| 74 65536, |
73 base::Bind(&UpdateCastTransportStatus)); | 75 base::Bind(&UpdateCastTransportStatus)); |
74 | 76 |
75 Packet packet; | 77 Packet packet; |
76 packet.push_back('t'); | 78 packet.push_back('t'); |
77 packet.push_back('e'); | 79 packet.push_back('e'); |
78 packet.push_back('s'); | 80 packet.push_back('s'); |
79 packet.push_back('t'); | 81 packet.push_back('t'); |
80 | 82 |
81 base::RunLoop run_loop; | 83 base::RunLoop run_loop; |
82 MockPacketReceiver receiver1(run_loop.QuitClosure()); | 84 MockPacketReceiver receiver1(run_loop.QuitClosure()); |
83 MockPacketReceiver receiver2( | 85 MockPacketReceiver receiver2( |
84 base::Bind(&SendPacket, &recv_transport, packet)); | 86 base::Bind(&SendPacket, &recv_transport, packet)); |
85 send_transport.StartReceiving(receiver1.packet_receiver()); | 87 send_transport.StartReceiving(receiver1.packet_receiver()); |
86 recv_transport.StartReceiving(receiver2.packet_receiver()); | 88 recv_transport.StartReceiving(receiver2.packet_receiver()); |
87 | 89 |
88 base::Closure cb; | 90 base::Closure cb; |
89 send_transport.SendPacket(new base::RefCountedData<Packet>(packet), cb); | 91 send_transport.SendPacket(new base::RefCountedData<Packet>(packet), cb); |
90 run_loop.Run(); | 92 run_loop.Run(); |
91 EXPECT_TRUE( | 93 EXPECT_TRUE( |
92 std::equal(packet.begin(), packet.end(), receiver1.packet().begin())); | 94 std::equal(packet.begin(), packet.end(), receiver1.packet().begin())); |
93 EXPECT_TRUE( | 95 EXPECT_TRUE( |
94 std::equal(packet.begin(), packet.end(), receiver2.packet().begin())); | 96 std::equal(packet.begin(), packet.end(), receiver2.packet().begin())); |
95 } | 97 } |
96 | 98 |
97 } // namespace cast | 99 } // namespace cast |
98 } // namespace media | 100 } // namespace media |
OLD | NEW |