Add a unittest to NetEq StatisticsCalculator for discarded packets counter.
Bug: webrtc:8199
Change-Id: I32127af1ae6692717f28dbf2d820cd67c0b6a66a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229300
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
Commit-Queue: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34808}
diff --git a/modules/audio_coding/neteq/statistics_calculator_unittest.cc b/modules/audio_coding/neteq/statistics_calculator_unittest.cc
index e6a9c26..a15cac4 100644
--- a/modules/audio_coding/neteq/statistics_calculator_unittest.cc
+++ b/modules/audio_coding/neteq/statistics_calculator_unittest.cc
@@ -179,4 +179,37 @@
EXPECT_EQ(1, lts.interruption_count);
}
+// Test that |discarded_primary_packets| as reported from
+// |GetOperationsAndState| always matches the arguments to |PacketsDiscarded|
+// accumulated.
+TEST(StatisticsCalculator, DiscardedPackets) {
+ StatisticsCalculator statistics_calculator;
+ EXPECT_EQ(
+ 0u,
+ statistics_calculator.GetOperationsAndState().discarded_primary_packets);
+
+ statistics_calculator.PacketsDiscarded(1);
+ EXPECT_EQ(
+ 1u,
+ statistics_calculator.GetOperationsAndState().discarded_primary_packets);
+
+ statistics_calculator.PacketsDiscarded(10);
+ EXPECT_EQ(
+ 11u,
+ statistics_calculator.GetOperationsAndState().discarded_primary_packets);
+
+ // Calling |SecondaryPacketsDiscarded| does not modify
+ // |discarded_primary_packets|.
+ statistics_calculator.SecondaryPacketsDiscarded(1);
+ EXPECT_EQ(
+ 11u,
+ statistics_calculator.GetOperationsAndState().discarded_primary_packets);
+
+ // Calling |FlushedPacketBuffer| does not modify |discarded_primary_packets|.
+ statistics_calculator.FlushedPacketBuffer();
+ EXPECT_EQ(
+ 11u,
+ statistics_calculator.GetOperationsAndState().discarded_primary_packets);
+}
+
} // namespace webrtc