Implement SimpleQuicClient::error_detail()
Plumb through errors ("error_details") from the underlying quic code to
SimpleQuicClient wrapper ("error_detail") used in RequestsTests. Try to ignore
the null-encoded-as-empty-string smell in the interface.
Written by gemini coder.
Test-only code.
PiperOrigin-RevId: 927464956
diff --git a/quiche/quic/test_tools/quic_test_client.cc b/quiche/quic/test_tools/quic_test_client.cc
index 5797a21..01dedee 100644
--- a/quiche/quic/test_tools/quic_test_client.cc
+++ b/quiche/quic/test_tools/quic_test_client.cc
@@ -578,6 +578,13 @@
return client()->connection_error();
}
+std::string QuicTestClient::error_details() const {
+ if (client()->session() == nullptr) {
+ return "";
+ }
+ return client()->session()->error_details();
+}
+
const std::string& QuicTestClient::cert_common_name() const {
return reinterpret_cast<RecordingProofVerifier*>(client_->proof_verifier())
->common_name();
diff --git a/quiche/quic/test_tools/quic_test_client.h b/quiche/quic/test_tools/quic_test_client.h
index 62d1904..d9cd3fe 100644
--- a/quiche/quic/test_tools/quic_test_client.h
+++ b/quiche/quic/test_tools/quic_test_client.h
@@ -395,6 +395,7 @@
QuicRstStreamErrorCode stream_error() { return stream_error_; }
QuicErrorCode connection_error() const;
+ std::string error_details() const;
MockableQuicClient* client() { return client_.get(); }
const MockableQuicClient* client() const { return client_.get(); }