Prepare for migrating to new AddPeer method

Bug: webrtc:13145
Change-Id: I089d518e55cb8df32ddf3c587f82376226c18e9a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/238761
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35406}
This commit is contained in:
Niels Möller 2021-11-23 13:18:16 +01:00 committed by WebRTC LUCI CQ
parent 646a90784e
commit 45e15e3343
3 changed files with 21 additions and 9 deletions

View File

@ -509,7 +509,11 @@ class PeerConnectionE2EQualityTestFixture {
virtual PeerHandle* AddPeer(
rtc::Thread* network_thread,
rtc::NetworkManager* network_manager,
rtc::FunctionView<void(PeerConfigurer*)> configurer) = 0;
rtc::FunctionView<void(PeerConfigurer*)> configurer) {
return AddPeer({network_thread, network_manager,
/*packet_socket_factory=*/nullptr},
configurer);
}
// Runs the media quality test, which includes setting up the call with
// configured participants, running it according to provided `run_params` and
// terminating it properly at the end. During call duration media quality

View File

@ -43,9 +43,12 @@ class PeerConfigurerImpl final
PeerConnectionE2EQualityTestFixture::CapturingDeviceIndex>;
PeerConfigurerImpl(rtc::Thread* network_thread,
rtc::NetworkManager* network_manager)
: components_(std::make_unique<InjectableComponents>(network_thread,
network_manager)),
rtc::NetworkManager* network_manager,
rtc::PacketSocketFactory* packet_socket_factory = nullptr)
: components_(
std::make_unique<InjectableComponents>(network_thread,
network_manager,
packet_socket_factory)),
params_(std::make_unique<Params>()) {}
PeerConfigurer* SetName(absl::string_view name) override {

View File

@ -67,12 +67,15 @@ struct PeerConnectionFactoryComponents {
// so client can't inject its own. Also only network manager can be overridden
// inside port allocator.
struct PeerConnectionComponents {
explicit PeerConnectionComponents(rtc::NetworkManager* network_manager)
: network_manager(network_manager) {
PeerConnectionComponents(rtc::NetworkManager* network_manager,
rtc::PacketSocketFactory* packet_socket_factory)
: network_manager(network_manager),
packet_socket_factory(packet_socket_factory) {
RTC_CHECK(network_manager);
}
rtc::NetworkManager* const network_manager;
rtc::PacketSocketFactory* const packet_socket_factory;
std::unique_ptr<webrtc::AsyncResolverFactory> async_resolver_factory;
std::unique_ptr<rtc::RTCCertificateGeneratorInterface> cert_generator;
std::unique_ptr<rtc::SSLCertificateVerifier> tls_cert_verifier;
@ -82,12 +85,14 @@ struct PeerConnectionComponents {
// Contains all components, that can be overridden in peer connection. Also
// has a network thread, that will be used to communicate with another peers.
struct InjectableComponents {
explicit InjectableComponents(rtc::Thread* network_thread,
rtc::NetworkManager* network_manager)
InjectableComponents(rtc::Thread* network_thread,
rtc::NetworkManager* network_manager,
rtc::PacketSocketFactory* packet_socket_factory)
: network_thread(network_thread),
pcf_dependencies(std::make_unique<PeerConnectionFactoryComponents>()),
pc_dependencies(
std::make_unique<PeerConnectionComponents>(network_manager)) {
std::make_unique<PeerConnectionComponents>(network_manager,
packet_socket_factory)) {
RTC_CHECK(network_thread);
}