1 /* 2 * Copyright (c) 2019 The WebRTC project authors. All Rights Reserved. 3 * 4 * Use of this source code is governed by a BSD-style license 5 * that can be found in the LICENSE file in the root of the source 6 * tree. An additional intellectual property rights grant can be found 7 * in the file PATENTS. All contributing project authors may 8 * be found in the AUTHORS file in the root of the source tree. 9 */ 10 #ifndef API_TEST_CREATE_PEERCONNECTION_QUALITY_TEST_FIXTURE_H_ 11 #define API_TEST_CREATE_PEERCONNECTION_QUALITY_TEST_FIXTURE_H_ 12 13 #include <memory> 14 #include <string> 15 16 #include "api/test/audio_quality_analyzer_interface.h" 17 #include "api/test/peerconnection_quality_test_fixture.h" 18 #include "api/test/time_controller.h" 19 #include "api/test/video_quality_analyzer_interface.h" 20 21 namespace webrtc { 22 namespace webrtc_pc_e2e { 23 24 // API is in development. Can be changed/removed without notice. 25 26 // Create test fixture to establish test call between Alice and Bob. 27 // During the test Alice will be caller and Bob will answer the call. 28 // |test_case_name| is a name of test case, that will be used for all metrics 29 // reporting. 30 // |time_controller| is used to manage all rtc::Thread's and TaskQueue 31 // instances. Instance of |time_controller| have to outlive created fixture. 32 // Returns a non-null PeerConnectionE2EQualityTestFixture instance. 33 std::unique_ptr<PeerConnectionE2EQualityTestFixture> 34 CreatePeerConnectionE2EQualityTestFixture( 35 std::string test_case_name, 36 TimeController& time_controller, 37 std::unique_ptr<AudioQualityAnalyzerInterface> audio_quality_analyzer, 38 std::unique_ptr<VideoQualityAnalyzerInterface> video_quality_analyzer); 39 40 } // namespace webrtc_pc_e2e 41 } // namespace webrtc 42 43 #endif // API_TEST_CREATE_PEERCONNECTION_QUALITY_TEST_FIXTURE_H_ 44