Chromium Code Reviews| 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 5bd8e4d0609c60f805e01e19343fbe2b824ea360..050c32bd0ea0b23e6b71bade81a069ede079b9af 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 |
| @@ -42,6 +42,21 @@ MediaType GetRuntimeMediaType(rtclog::MediaType media_type) { |
| RTC_NOTREACHED(); |
| return MediaType::ANY; |
| } |
| + |
| +rtclog::BweProbeResult::ResultType ConvertProbeResultType( |
| + 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 |
| @@ -98,6 +113,19 @@ MediaType GetRuntimeMediaType(rtclog::MediaType media_type) { |
| << (event.has_audio_sender_config() ? "" : "no ") |
| << "audio sender config"; |
| } |
| + 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(); |
| } |
| @@ -492,4 +520,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, |
|
terelius
2017/02/20 14:00:31
probes -> packets
|
| + 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(ConvertProbeResultType(failure_reason), bwe_event.result()); |
| + ASSERT_FALSE(bwe_event.has_bitrate_bps()); |
| + |
| + // TODO(philipel): Verify the parser when parsing has been implemented. |
| +} |
| + |
| } // namespace webrtc |