Chromium Code Reviews| Index: webrtc/modules/remote_bitrate_estimator/test/estimators/nada_unittest.cc |
| diff --git a/webrtc/modules/remote_bitrate_estimator/test/estimators/nada_unittest.cc b/webrtc/modules/remote_bitrate_estimator/test/estimators/nada_unittest.cc |
| index 967c2b2b5e47c3cda41a935e3a2b13ba44f07af7..6dd6b2dbedae9724e1ce92c8f2f50111f3a0dad1 100644 |
| --- a/webrtc/modules/remote_bitrate_estimator/test/estimators/nada_unittest.cc |
| +++ b/webrtc/modules/remote_bitrate_estimator/test/estimators/nada_unittest.cc |
| @@ -313,115 +313,126 @@ TEST_F(NadaSenderSideTest, VeryHighBandwith) { |
| } |
| TEST_F(NadaReceiverSideTest, ReceivingRateNoPackets) { |
| - EXPECT_EQ(nada_receiver_.RecentReceivingRate(), static_cast<size_t>(0)); |
| + EXPECT_EQ(nada_receiver_.RecentKbps(), static_cast<size_t>(0)); |
| } |
| -TEST_F(NadaReceiverSideTest, ReceivingRateSinglePacket) { |
| - const size_t kPayloadSizeBytes = 500 * 1000; |
| - const int64_t kSendTimeUs = 300 * 1000; |
| - const int64_t kArrivalTimeMs = kSendTimeUs / 1000 + 100; |
| - const uint16_t kSequenceNumber = 1; |
| - const int64_t kTimeWindowMs = NadaBweReceiver::kReceivingRateTimeWindowMs; |
| - |
| - const MediaPacket media_packet(kFlowId, kSendTimeUs, kPayloadSizeBytes, |
| - kSequenceNumber); |
| - nada_receiver_.ReceivePacket(kArrivalTimeMs, media_packet); |
| - |
| - const size_t kReceivingRateKbps = 8 * kPayloadSizeBytes / kTimeWindowMs; |
| - |
| - EXPECT_EQ(nada_receiver_.RecentReceivingRate(), kReceivingRateKbps); |
| -} |
| - |
| -TEST_F(NadaReceiverSideTest, ReceivingRateLargePackets) { |
| - const size_t kPayloadSizeBytes = 3000 * 1000; |
| - const int64_t kTimeGapMs = 3000; // Between each packet. |
| - const int64_t kOneWayDelayMs = 1000; |
| - |
| - for (int i = 1; i < 5; ++i) { |
| - int64_t send_time_us = i * kTimeGapMs * 1000; |
| - int64_t arrival_time_ms = send_time_us / 1000 + kOneWayDelayMs; |
| - uint16_t sequence_number = i; |
| - const MediaPacket media_packet(kFlowId, send_time_us, kPayloadSizeBytes, |
| - sequence_number); |
| - nada_receiver_.ReceivePacket(arrival_time_ms, media_packet); |
| - } |
| - |
| - const size_t kReceivingRateKbps = 8 * kPayloadSizeBytes / kTimeGapMs; |
| - EXPECT_EQ(nada_receiver_.RecentReceivingRate(), kReceivingRateKbps); |
| -} |
| - |
| -TEST_F(NadaReceiverSideTest, ReceivingRateSmallPackets) { |
| - const size_t kPayloadSizeBytes = 100 * 1000; |
| - const int64_t kTimeGapMs = 50; // Between each packet. |
| - const int64_t kOneWayDelayMs = 50; |
| - |
| - for (int i = 1; i < 50; ++i) { |
| - int64_t send_time_us = i * kTimeGapMs * 1000; |
| - int64_t arrival_time_ms = send_time_us / 1000 + kOneWayDelayMs; |
| - uint16_t sequence_number = i; |
| - const MediaPacket media_packet(kFlowId, send_time_us, kPayloadSizeBytes, |
| - sequence_number); |
| - nada_receiver_.ReceivePacket(arrival_time_ms, media_packet); |
| - } |
| - |
| - const size_t kReceivingRateKbps = 8 * kPayloadSizeBytes / kTimeGapMs; |
| - EXPECT_EQ(nada_receiver_.RecentReceivingRate(), kReceivingRateKbps); |
| -} |
| - |
| -TEST_F(NadaReceiverSideTest, ReceivingRateIntermittentPackets) { |
| - const size_t kPayloadSizeBytes = 100 * 1000; |
| - const int64_t kTimeGapMs = 50; // Between each packet. |
| - const int64_t kFirstSendTimeMs = 0; |
| - const int64_t kOneWayDelayMs = 50; |
| - |
| - // Gap between first and other packets |
| - const MediaPacket media_packet(kFlowId, kFirstSendTimeMs, kPayloadSizeBytes, |
| - 1); |
| - nada_receiver_.ReceivePacket(kFirstSendTimeMs + kOneWayDelayMs, media_packet); |
| - |
| - const int64_t kDelayAfterFirstPacketMs = 1000; |
| - const int kNumPackets = 5; // Small enough so that all packets are covered. |
| - EXPECT_LT((kNumPackets - 2) * kTimeGapMs, |
| - NadaBweReceiver::kReceivingRateTimeWindowMs); |
| - const int64_t kTimeWindowMs = |
| - kDelayAfterFirstPacketMs + (kNumPackets - 2) * kTimeGapMs; |
| - |
| - for (int i = 2; i <= kNumPackets; ++i) { |
| - int64_t send_time_us = |
| - ((i - 2) * kTimeGapMs + kFirstSendTimeMs + kDelayAfterFirstPacketMs) * |
| - 1000; |
| - int64_t arrival_time_ms = send_time_us / 1000 + kOneWayDelayMs; |
| - uint16_t sequence_number = i; |
| - const MediaPacket media_packet(kFlowId, send_time_us, kPayloadSizeBytes, |
| - sequence_number); |
| - nada_receiver_.ReceivePacket(arrival_time_ms, media_packet); |
| - } |
| - |
| - const size_t kTotalReceivedKb = 8 * kNumPackets * kPayloadSizeBytes; |
| - const int64_t kCorrectedTimeWindowMs = |
| - (kTimeWindowMs * kNumPackets) / (kNumPackets - 1); |
| - EXPECT_EQ(nada_receiver_.RecentReceivingRate(), |
| - kTotalReceivedKb / kCorrectedTimeWindowMs); |
| -} |
| - |
| -TEST_F(NadaReceiverSideTest, ReceivingRateDuplicatedPackets) { |
| - const size_t kPayloadSizeBytes = 500 * 1000; |
| - const int64_t kSendTimeUs = 300 * 1000; |
| - const int64_t kArrivalTimeMs = kSendTimeUs / 1000 + 100; |
| - const uint16_t kSequenceNumber = 1; |
| - const int64_t kTimeWindowMs = NadaBweReceiver::kReceivingRateTimeWindowMs; |
| - |
| - // Insert the same packet twice. |
| - for (int i = 0; i < 2; ++i) { |
| - const MediaPacket media_packet(kFlowId, kSendTimeUs + 50 * i, |
| - kPayloadSizeBytes, kSequenceNumber); |
| - nada_receiver_.ReceivePacket(kArrivalTimeMs + 50 * i, media_packet); |
| - } |
| - // Should be counted only once. |
| - const size_t kReceivingRateKbps = 8 * kPayloadSizeBytes / kTimeWindowMs; |
| - |
| - EXPECT_EQ(nada_receiver_.RecentReceivingRate(), kReceivingRateKbps); |
| -} |
| +// RecentKbps and RecentReceivingRate are calculated differently. |
| +// TEST_F(NadaReceiverSideTest, ReceivingRateSinglePacket) { |
|
stefan-webrtc
2015/07/02 11:03:41
I assume these shouldn't be disabled?
magalhaesc
2015/07/02 17:06:18
Some unittests will be removed as they are not han
|
| +// const size_t kPayloadSizeBytes = 500 * 1000; |
| +// const int64_t kSendTimeUs = 300 * 1000; |
| +// const int64_t kArrivalTimeMs = kSendTimeUs / 1000 + 100; |
| +// const uint16_t kSequenceNumber = 1; |
| +// const int64_t kTimeWindowMs = NadaBweReceiver::kReceivingRateTimeWindowMs; |
| + |
| +// const MediaPacket media_packet(kFlowId, kSendTimeUs, kPayloadSizeBytes, |
| +// kSequenceNumber); |
| +// nada_receiver_.ReceivePacket(kArrivalTimeMs, media_packet); |
| + |
| +// const size_t kReceivingRateKbps = 8 * kPayloadSizeBytes / kTimeWindowMs; |
| + |
| +// EXPECT_EQ(nada_receiver_.RecentReceivingRate(), kReceivingRateKbps); |
| +// } |
| + |
| +// RecentKbps and RecentReceivingRate are calculated differently. |
| +// TEST_F(NadaReceiverSideTest, ReceivingRateLargePackets) { |
| +// const size_t kPayloadSizeBytes = 3000 * 1000; |
| +// const int64_t kTimeGapMs = 3000; // Between each packet. |
| +// const int64_t kOneWayDelayMs = 1000; |
| + |
| +// for (int i = 1; i < 5; ++i) { |
| +// int64_t send_time_us = i * kTimeGapMs * 1000; |
| +// int64_t arrival_time_ms = send_time_us / 1000 + kOneWayDelayMs; |
| +// uint16_t sequence_number = i; |
| +// const MediaPacket media_packet(kFlowId, send_time_us, kPayloadSizeBytes, |
| +// sequence_number); |
| +// nada_receiver_.ReceivePacket(arrival_time_ms, media_packet); |
| +// } |
| + |
| +// const size_t kReceivingRateKbps = 8 * kPayloadSizeBytes / kTimeGapMs; |
| +// EXPECT_EQ(nada_receiver_.RecentReceivingRate(), kReceivingRateKbps); |
| +// } |
| + |
| +// RecentKbps and RecentReceivingRate are calculated differently. |
| +// TEST_F(NadaReceiverSideTest, ReceivingRateSmallPackets) { |
| +// const size_t kPayloadSizeBytes = 100 * 1000; |
| +// const int64_t kTimeGapMs = 50; // Between each packet. |
| +// const int64_t kOneWayDelayMs = 50; |
| + |
| +// for (int i = 1; i < 50; ++i) { |
| +// int64_t send_time_us = i * kTimeGapMs * 1000; |
| +// int64_t arrival_time_ms = send_time_us / 1000 + kOneWayDelayMs; |
| +// uint16_t sequence_number = i; |
| +// const MediaPacket media_packet(kFlowId, send_time_us, kPayloadSizeBytes, |
| +// sequence_number); |
| +// nada_receiver_.ReceivePacket(arrival_time_ms, media_packet); |
| +// } |
| + |
| +// const size_t kReceivingRateKbps = 8 * kPayloadSizeBytes / kTimeGapMs; |
| +// RecentKbps and RecentReceivingRate are calculated differently. |
| +// EXPECT_EQ(nada_receiver_.RecentReceivingRate(), kReceivingRateKbps); |
| +// } |
| + |
| +// RecentKbps and RecentReceivingRate are calculated differently. |
| +// TEST_F(NadaReceiverSideTest, ReceivingRateIntermittentPackets) { |
| +// const size_t kPayloadSizeBytes = 100 * 1000; |
| +// const int64_t kTimeGapMs = 50; // Between each packet. |
| +// const int64_t kFirstSendTimeMs = 0; |
| +// const int64_t kOneWayDelayMs = 50; |
| + |
| +// // Gap between first and other packets |
| +// const MediaPacket media_packet(kFlowId, kFirstSendTimeMs, |
| +// kPayloadSizeBytes, |
| +// 1); |
| +// nada_receiver_.ReceivePacket(kFirstSendTimeMs + kOneWayDelayMs, |
| +// media_packet); |
| + |
| +// const int64_t kDelayAfterFirstPacketMs = 1000; |
| +// const int kNumPackets = 5; // Small enough so that all packets are |
| +// covered. |
| +// EXPECT_LT((kNumPackets - 2) * kTimeGapMs, |
| +// NadaBweReceiver::kReceivingRateTimeWindowMs); |
| +// const int64_t kTimeWindowMs = |
| +// kDelayAfterFirstPacketMs + (kNumPackets - 2) * kTimeGapMs; |
| + |
| +// for (int i = 2; i <= kNumPackets; ++i) { |
| +// int64_t send_time_us = |
| +// ((i - 2) * kTimeGapMs + kFirstSendTimeMs + kDelayAfterFirstPacketMs) |
| +// * |
| +// 1000; |
| +// int64_t arrival_time_ms = send_time_us / 1000 + kOneWayDelayMs; |
| +// uint16_t sequence_number = i; |
| +// const MediaPacket media_packet(kFlowId, send_time_us, kPayloadSizeBytes, |
| +// sequence_number); |
| +// nada_receiver_.ReceivePacket(arrival_time_ms, media_packet); |
| +// } |
| + |
| +// const size_t kTotalReceivedKb = 8 * kNumPackets * kPayloadSizeBytes; |
| +// const int64_t kCorrectedTimeWindowMs = |
| +// (kTimeWindowMs * kNumPackets) / (kNumPackets - 1); |
| + |
| +// EXPECT_EQ(nada_receiver_.RecentReceivingRate(), |
| +// kTotalReceivedKb / kCorrectedTimeWindowMs); |
| +// } |
| + |
| +// RecentKbps and RecentReceivingRate are calculated differently. |
| +// TEST_F(NadaReceiverSideTest, ReceivingRateDuplicatedPackets) { |
| +// const size_t kPayloadSizeBytes = 500 * 1000; |
| +// const int64_t kSendTimeUs = 300 * 1000; |
| +// const int64_t kArrivalTimeMs = kSendTimeUs / 1000 + 100; |
| +// const uint16_t kSequenceNumber = 1; |
| +// const int64_t kTimeWindowMs = NadaBweReceiver::kReceivingRateTimeWindowMs; |
| + |
| +// // Insert the same packet twice. |
| +// for (int i = 0; i < 2; ++i) { |
| +// const MediaPacket media_packet(kFlowId, kSendTimeUs + 50 * i, |
| +// kPayloadSizeBytes, kSequenceNumber); |
| +// nada_receiver_.ReceivePacket(kArrivalTimeMs + 50 * i, media_packet); |
| +// } |
| +// // Should be counted only once. |
| + |
| +// const size_t kReceivingRateKbps = 8 * kPayloadSizeBytes / kTimeWindowMs; |
| +// EXPECT_EQ(nada_receiver_.RecentReceivingRate(), kReceivingRateKbps); |
| +// } |
| TEST_F(NadaReceiverSideTest, PacketLossNoPackets) { |
| EXPECT_EQ(nada_receiver_.RecentPacketLossRatio(), 0.0f); |