From 718d7b34d0e1b3018d04642fef05acb1df102609 Mon Sep 17 00:00:00 2001 From: Artem Titov Date: Tue, 27 Sep 2022 11:25:19 +0200 Subject: [PATCH] Add missing export to the perf output file Bug: b/246095034 Change-Id: I53f327bd9d36c6cda814cead9493b21a3757d784 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/276622 Reviewed-by: Alessio Bazzica Commit-Queue: Artem Titov Reviewed-by: Mirko Bonadei Cr-Commit-Position: refs/heads/main@{#38220} --- audio/BUILD.gn | 4 +++- audio/test/pc_low_bandwidth_audio_test.cc | 11 +++++++++-- rtc_tools/BUILD.gn | 4 +++- rtc_tools/frame_analyzer/frame_analyzer.cc | 16 ++++++++++++---- 4 files changed, 27 insertions(+), 8 deletions(-) diff --git a/audio/BUILD.gn b/audio/BUILD.gn index bb31ca0e83..e42a1225bd 100644 --- a/audio/BUILD.gn +++ b/audio/BUILD.gn @@ -224,12 +224,14 @@ if (rtc_include_tests) { "../api:peer_connection_quality_test_fixture_api", "../api:simulated_network_api", "../api:time_controller", + "../api/test/metrics:chrome_perf_dashboard_metrics_exporter", "../api/test/metrics:global_metrics_logger_and_exporter", + "../api/test/metrics:metrics_exporter", + "../api/test/metrics:stdout_metrics_exporter", "../call:simulated_network", "../common_audio", "../system_wrappers", "../test:fileutils", - "../test:perf_test", "../test:test_common", "../test:test_main", "../test:test_support", diff --git a/audio/test/pc_low_bandwidth_audio_test.cc b/audio/test/pc_low_bandwidth_audio_test.cc index 8ce383612e..4fab15b9dd 100644 --- a/audio/test/pc_low_bandwidth_audio_test.cc +++ b/audio/test/pc_low_bandwidth_audio_test.cc @@ -15,7 +15,10 @@ #include "absl/strings/string_view.h" #include "api/test/create_network_emulation_manager.h" #include "api/test/create_peerconnection_quality_test_fixture.h" +#include "api/test/metrics/chrome_perf_dashboard_metrics_exporter.h" #include "api/test/metrics/global_metrics_logger_and_exporter.h" +#include "api/test/metrics/metrics_exporter.h" +#include "api/test/metrics/stdout_metrics_exporter.h" #include "api/test/network_emulation_manager.h" #include "api/test/peerconnection_quality_test_fixture.h" #include "api/test/simulated_network.h" @@ -24,7 +27,6 @@ #include "test/gtest.h" #include "test/pc/e2e/network_quality_metrics_reporter.h" #include "test/testsupport/file_utils.h" -#include "test/testsupport/perf_test.h" ABSL_DECLARE_FLAG(std::string, test_case_prefix); ABSL_DECLARE_FLAG(int, sample_rate_hz); @@ -99,7 +101,12 @@ std::string PerfResultsOutputFile() { void LogTestResults() { std::string perf_results_output_file = PerfResultsOutputFile(); - EXPECT_TRUE(webrtc::test::WritePerfResults(perf_results_output_file)); + std::vector> exporters; + exporters.push_back(std::make_unique()); + exporters.push_back(std::make_unique( + perf_results_output_file)); + EXPECT_TRUE( + ExportPerfMetric(*GetGlobalMetricsLogger(), std::move(exporters))); const ::testing::TestInfo* const test_info = ::testing::UnitTest::GetInstance()->current_test_info(); diff --git a/rtc_tools/BUILD.gn b/rtc_tools/BUILD.gn index 21dc7360f4..19b885d79f 100644 --- a/rtc_tools/BUILD.gn +++ b/rtc_tools/BUILD.gn @@ -140,9 +140,11 @@ rtc_executable("frame_analyzer") { ":video_quality_analysis", "../api:make_ref_counted", "../api:scoped_refptr", + "../api/test/metrics:chrome_perf_dashboard_metrics_exporter", "../api/test/metrics:global_metrics_logger_and_exporter", + "../api/test/metrics:metrics_exporter", + "../api/test/metrics:stdout_metrics_exporter", "../rtc_base:stringutils", - "../test:perf_test", "//third_party/abseil-cpp/absl/flags:flag", "//third_party/abseil-cpp/absl/flags:parse", "//third_party/abseil-cpp/absl/strings", diff --git a/rtc_tools/frame_analyzer/frame_analyzer.cc b/rtc_tools/frame_analyzer/frame_analyzer.cc index 2224f4814e..501a6142a8 100644 --- a/rtc_tools/frame_analyzer/frame_analyzer.cc +++ b/rtc_tools/frame_analyzer/frame_analyzer.cc @@ -19,7 +19,10 @@ #include "absl/flags/parse.h" #include "absl/strings/match.h" #include "api/scoped_refptr.h" +#include "api/test/metrics/chrome_perf_dashboard_metrics_exporter.h" #include "api/test/metrics/global_metrics_logger_and_exporter.h" +#include "api/test/metrics/metrics_exporter.h" +#include "api/test/metrics/stdout_metrics_exporter.h" #include "rtc_base/strings/string_builder.h" #include "rtc_tools/frame_analyzer/video_color_aligner.h" #include "rtc_tools/frame_analyzer/video_geometry_aligner.h" @@ -27,7 +30,6 @@ #include "rtc_tools/frame_analyzer/video_temporal_aligner.h" #include "rtc_tools/video_file_reader.h" #include "rtc_tools/video_file_writer.h" -#include "test/testsupport/perf_test.h" ABSL_FLAG(int32_t, width, -1, "The width of the reference and test files"); ABSL_FLAG(int32_t, height, -1, "The height of the reference and test files"); @@ -163,12 +165,18 @@ int main(int argc, char* argv[]) { webrtc::test::PrintAnalysisResults(absl::GetFlag(FLAGS_label), results, *webrtc::test::GetGlobalMetricsLogger()); + std::vector> exporters; + exporters.push_back(std::make_unique()); std::string chartjson_result_file = absl::GetFlag(FLAGS_chartjson_result_file); if (!chartjson_result_file.empty()) { - if (!webrtc::test::WritePerfResults(chartjson_result_file)) { - return 1; - } + exporters.push_back( + std::make_unique( + chartjson_result_file)); + } + if (!webrtc::test::ExportPerfMetric(*webrtc::test::GetGlobalMetricsLogger(), + std::move(exporters))) { + return 1; } std::string aligned_output_file = absl::GetFlag(FLAGS_aligned_output_file); if (!aligned_output_file.empty()) {