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

Unified Diff: webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.cc

Issue 2666533002: Add probe logging to RtcEventLog. (Closed)
Patch Set: Rebase + format Created 3 years, 10 months 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 side-by-side diff with in-line comments
Download patch
Index: webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.cc
diff --git a/webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.cc b/webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.cc
index e7db5930f7c15ec937f5b7c19a2ca2d14012ab76..e66c09074469b27a1b2a96a725c12da0efe99430 100644
--- a/webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.cc
+++ b/webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.cc
@@ -56,6 +56,20 @@ BandwidthUsage GetRuntimeDetectorState(
RTC_NOTREACHED();
return kBwNormal;
}
+
+rtclog::BweProbeResult::ResultType GetProbeResultType(
+ ProbeFailureReason failure_reason) {
+ switch (failure_reason) {
+ case kInvalidSendReceiveInterval:
+ return rtclog::BweProbeResult::INVALID_SEND_RECEIVE_INTERVAL;
+ case kInvalidSendReceiveRatio:
+ return rtclog::BweProbeResult::INVALID_SEND_RECEIVE_RATIO;
+ case kTimeout:
+ return rtclog::BweProbeResult::TIMEOUT;
+ }
+ RTC_NOTREACHED();
+ return rtclog::BweProbeResult::SUCCESS;
+}
} // namespace
// Checks that the event has a timestamp, a type and exactly the data field
@@ -132,6 +146,18 @@ BandwidthUsage GetRuntimeDetectorState(
<< (event.has_audio_network_adaptation() ? "" : "no ")
<< "audio network adaptation";
}
+ if ((type == rtclog::Event::BWE_PROBE_CLUSTER_CREATED_EVENT) !=
+ event.has_probe_cluster()) {
+ return ::testing::AssertionFailure()
+ << "Event of type " << type << " has "
+ << (event.has_probe_cluster() ? "" : "no ") << "bwe probe cluster";
+ }
+ if ((type == rtclog::Event::BWE_PROBE_RESULT_EVENT) !=
+ event.has_probe_result()) {
+ return ::testing::AssertionFailure()
+ << "Event of type " << type << " has "
+ << (event.has_probe_result() ? "" : "no ") << "bwe probe result";
+ }
return ::testing::AssertionSuccess();
}
@@ -550,4 +576,67 @@ void RtcEventLogTestHelper::VerifyLogEndEvent(
EXPECT_EQ(rtclog::Event::LOG_END, event.type());
}
+void RtcEventLogTestHelper::VerifyBweProbeCluster(
+ const ParsedRtcEventLog& parsed_log,
+ size_t index,
+ uint32_t id,
+ uint32_t bitrate_bps,
+ uint32_t min_probes,
+ uint32_t min_bytes) {
+ const rtclog::Event& event = parsed_log.events_[index];
+ ASSERT_TRUE(IsValidBasicEvent(event));
+ EXPECT_EQ(rtclog::Event::BWE_PROBE_CLUSTER_CREATED_EVENT, event.type());
+
+ const rtclog::BweProbeCluster& bwe_event = event.probe_cluster();
+ ASSERT_TRUE(bwe_event.has_id());
+ EXPECT_EQ(id, bwe_event.id());
+ ASSERT_TRUE(bwe_event.has_bitrate_bps());
+ EXPECT_EQ(bitrate_bps, bwe_event.bitrate_bps());
+ ASSERT_TRUE(bwe_event.has_min_packets());
+ EXPECT_EQ(min_probes, bwe_event.min_packets());
+ ASSERT_TRUE(bwe_event.has_min_bytes());
+ EXPECT_EQ(min_bytes, bwe_event.min_bytes());
+
+ // TODO(philipel): Verify the parser when parsing has been implemented.
+}
+
+void RtcEventLogTestHelper::VerifyProbeResultSuccess(
+ const ParsedRtcEventLog& parsed_log,
+ size_t index,
+ uint32_t id,
+ uint32_t bitrate_bps) {
+ const rtclog::Event& event = parsed_log.events_[index];
+ ASSERT_TRUE(IsValidBasicEvent(event));
+ EXPECT_EQ(rtclog::Event::BWE_PROBE_RESULT_EVENT, event.type());
+
+ const rtclog::BweProbeResult& bwe_event = event.probe_result();
+ ASSERT_TRUE(bwe_event.has_id());
+ EXPECT_EQ(id, bwe_event.id());
+ ASSERT_TRUE(bwe_event.has_bitrate_bps());
+ EXPECT_EQ(bitrate_bps, bwe_event.bitrate_bps());
+ ASSERT_TRUE(bwe_event.has_result());
+ EXPECT_EQ(rtclog::BweProbeResult::SUCCESS, bwe_event.result());
+
+ // TODO(philipel): Verify the parser when parsing has been implemented.
+}
+
+void RtcEventLogTestHelper::VerifyProbeResultFailure(
+ const ParsedRtcEventLog& parsed_log,
+ size_t index,
+ uint32_t id,
+ ProbeFailureReason failure_reason) {
+ const rtclog::Event& event = parsed_log.events_[index];
+ ASSERT_TRUE(IsValidBasicEvent(event));
+ EXPECT_EQ(rtclog::Event::BWE_PROBE_RESULT_EVENT, event.type());
+
+ const rtclog::BweProbeResult& bwe_event = event.probe_result();
+ ASSERT_TRUE(bwe_event.has_id());
+ EXPECT_EQ(id, bwe_event.id());
+ ASSERT_TRUE(bwe_event.has_result());
+ EXPECT_EQ(GetProbeResultType(failure_reason), bwe_event.result());
+ ASSERT_FALSE(bwe_event.has_bitrate_bps());
+
+ // TODO(philipel): Verify the parser when parsing has been implemented.
+}
+
} // namespace webrtc
« no previous file with comments | « webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.h ('k') | webrtc/modules/rtp_rtcp/source/rtp_sender.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698