Allow supplying a custom NetworkControllerInterfaceFactory per-Call in PeerConnectionDependencies

This requires making CallConfig move-only so it can hold a unique_ptr to
the factory, but as discussed with Danil, that seems fine.

Bug: chromium:355610792
Change-Id: Ie52e33faaa4a2af748daeb25f5327b7a532936e2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/357862
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tony Herre <herre@google.com>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42679}
diff --git a/pc/test/enable_fake_media.cc b/pc/test/enable_fake_media.cc
index 5497c60..01860a8 100644
--- a/pc/test/enable_fake_media.cc
+++ b/pc/test/enable_fake_media.cc
@@ -36,8 +36,8 @@
         absl::Nonnull<std::unique_ptr<FakeMediaEngine>> fake)
         : fake_(std::move(fake)) {}
 
-    std::unique_ptr<Call> CreateCall(const CallConfig& config) override {
-      return Call::Create(config);
+    std::unique_ptr<Call> CreateCall(CallConfig config) override {
+      return Call::Create(std::move(config));
     }
 
     std::unique_ptr<MediaEngineInterface> CreateMediaEngine(