Abstract out the MoQ Chat User interface and implement E2E chat test.
Separate the Constructor for ChatClient() and the Connect() call.
ChatClient now takes a generic ChatUserInterface to send output and collect input however the owning application specifies.
PiperOrigin-RevId: 665344318
diff --git a/build/source_list.json b/build/source_list.json
index 079ba76..94ad682 100644
--- a/build/source_list.json
+++ b/build/source_list.json
@@ -1559,6 +1559,7 @@
"quiche/quic/moqt/tools/chat_client_bin.cc",
"quiche/quic/moqt/tools/chat_server.cc",
"quiche/quic/moqt/tools/chat_server_bin.cc",
+ "quiche/quic/moqt/tools/moq_chat_end_to_end_test.cc",
"quiche/quic/moqt/tools/moq_chat_test.cc",
"quiche/quic/moqt/tools/moqt_client.cc",
"quiche/quic/moqt/tools/moqt_end_to_end_test.cc",