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

Side by Side Diff: net/quic/quic_multipath_transmissions_map_test.cc

Issue 1431363002: Add a data structure QuicMultipathTransmissionsMap which is not in use now. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@106859834
Patch Set: Created 5 years, 1 month 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 unified diff | Download patch
« no previous file with comments | « net/quic/quic_multipath_transmissions_map.cc ('k') | net/quic/quic_protocol.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 #include "net/quic/quic_multipath_transmissions_map.h"
2 #include "testing/gtest/include/gtest/gtest.h"
3
4 namespace net_quic {
5 namespace test {
6 namespace {
7
8 TEST(QuicAcrossPathsTransmissionMapTest, OnPacketRetransmittedOnDifferentPath) {
9 QuicMultipathTransmissionsMap transmission_map;
10 // Packet0's original transmission sent on path 1 with packet number 1.
11 QuicPathIdPacketNumber packet0_0(1, 1);
12 // Packet0's retransmission sent on path 2 with packet number 1.
13 QuicPathIdPacketNumber packet0_1(2, 1);
14 // packet0's 2nd retransmission sent on path 3 with packet number 1.
15 QuicPathIdPacketNumber packet0_2(3, 1);
16
17 transmission_map.OnPacketRetransmittedOnDifferentPath(packet0_0, packet0_1);
18 const QuicMultipathTransmissionsMap::MultipathTransmissionsList*
19 transmission_list1 =
20 transmission_map.MaybeGetTransmissionsOnOtherPaths(packet0_0);
21 EXPECT_EQ(packet0_0, (*transmission_list1)[0]);
22 EXPECT_EQ(packet0_1, (*transmission_list1)[1]);
23
24 transmission_map.OnPacketRetransmittedOnDifferentPath(packet0_1, packet0_2);
25 const QuicMultipathTransmissionsMap::MultipathTransmissionsList*
26 transmission_list2 =
27 transmission_map.MaybeGetTransmissionsOnOtherPaths(packet0_0);
28 EXPECT_EQ(packet0_0, (*transmission_list2)[0]);
29 EXPECT_EQ(packet0_1, (*transmission_list2)[1]);
30 EXPECT_EQ(packet0_2, (*transmission_list2)[2]);
31 // Make sure there is no memory leakage.
32 }
33
34 TEST(QuicAcrossPathsTransmissionMapTest, MaybeGetTransmissionsOnOtherPaths) {
35 QuicMultipathTransmissionsMap transmission_map;
36 // Packet0's original transmission sent on path 1 with packet number 1.
37 QuicPathIdPacketNumber packet0_0(1, 1);
38 // Packet0's retransmission sent on path 2 with packet number 1.
39 QuicPathIdPacketNumber packet0_1(2, 1);
40 // packet0's 2nd retransmission sent on path 3 with packet number 1.
41 QuicPathIdPacketNumber packet0_2(3, 1);
42
43 transmission_map.OnPacketRetransmittedOnDifferentPath(packet0_0, packet0_1);
44 transmission_map.OnPacketRetransmittedOnDifferentPath(packet0_1, packet0_2);
45
46 const QuicMultipathTransmissionsMap::MultipathTransmissionsList*
47 transmission_list1 =
48 transmission_map.MaybeGetTransmissionsOnOtherPaths(packet0_0);
49 const QuicMultipathTransmissionsMap::MultipathTransmissionsList*
50 transmission_list2 =
51 transmission_map.MaybeGetTransmissionsOnOtherPaths(packet0_1);
52 const QuicMultipathTransmissionsMap::MultipathTransmissionsList*
53 transmission_list3 =
54 transmission_map.MaybeGetTransmissionsOnOtherPaths(packet0_2);
55 // Make sure all three pointers point to the same list.
56 EXPECT_EQ(transmission_list1, transmission_list2);
57 EXPECT_EQ(transmission_list2, transmission_list3);
58 EXPECT_EQ(packet0_0, (*transmission_list1)[0]);
59 EXPECT_EQ(packet0_1, (*transmission_list1)[1]);
60 EXPECT_EQ(packet0_2, (*transmission_list1)[2]);
61
62 // Packet1 which is not transmitted across path.
63 QuicPathIdPacketNumber packet1_0(1, 2);
64 EXPECT_EQ(nullptr,
65 transmission_map.MaybeGetTransmissionsOnOtherPaths(packet1_0));
66 // Make sure there is no memory leakage.
67 }
68
69 TEST(QuicAcrossPathsTransmissionMapTest, OnPacketHandled) {
70 QuicMultipathTransmissionsMap transmission_map;
71
72 // Packet's original transmission sent on path 1 with packet number 1.
73 QuicPathIdPacketNumber packet0_0(1, 1);
74 // Packet's retransmission sent on path 2 with packet number 1.
75 QuicPathIdPacketNumber packet0_1(2, 1);
76 // packet's 2nd retransmission sent on path 3 with packet number 1.
77 QuicPathIdPacketNumber packet0_2(3, 1);
78 transmission_map.OnPacketRetransmittedOnDifferentPath(packet0_0, packet0_1);
79 transmission_map.OnPacketRetransmittedOnDifferentPath(packet0_1, packet0_2);
80
81 // Packet1's original transmission sent on path 1 with packet number 2.
82 QuicPathIdPacketNumber packet1_0(1, 2);
83 // Packet1's retransmission sent on path 2 with packet number 2.
84 QuicPathIdPacketNumber packet1_1(2, 2);
85 transmission_map.OnPacketRetransmittedOnDifferentPath(packet1_0, packet1_1);
86
87 transmission_map.OnPacketHandled(packet0_0);
88 EXPECT_EQ(nullptr,
89 transmission_map.MaybeGetTransmissionsOnOtherPaths(packet0_0));
90 EXPECT_EQ(nullptr,
91 transmission_map.MaybeGetTransmissionsOnOtherPaths(packet0_1));
92 EXPECT_EQ(nullptr,
93 transmission_map.MaybeGetTransmissionsOnOtherPaths(packet0_2));
94 const QuicMultipathTransmissionsMap::MultipathTransmissionsList*
95 transmission_list =
96 transmission_map.MaybeGetTransmissionsOnOtherPaths(packet1_0);
97 EXPECT_EQ(packet1_0, (*transmission_list)[0]);
98 EXPECT_EQ(packet1_1, (*transmission_list)[1]);
99 // Packet 1 is received on path 2.
100 transmission_map.OnPacketHandled(packet1_1);
101 EXPECT_EQ(nullptr,
102 transmission_map.MaybeGetTransmissionsOnOtherPaths(packet1_0));
103 EXPECT_EQ(nullptr,
104 transmission_map.MaybeGetTransmissionsOnOtherPaths(packet1_1));
105 // Make sure there is no memory leakage.
106 }
107
108 } // namespace
109 } // namespace test
110 } // namespace net_quic
OLDNEW
« no previous file with comments | « net/quic/quic_multipath_transmissions_map.cc ('k') | net/quic/quic_protocol.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698