Fix a memory destruction ordering issue in Quic test code

QuicServer relies on an unowned pointer to a QuicSimpleServerBackend.  Fix some tests constructing/destructing them in the wrong order.

PiperOrigin-RevId: 467307068
diff --git a/quiche/quic/tools/quic_server_test.cc b/quiche/quic/tools/quic_server_test.cc
index 444d023..fe68ba5 100644
--- a/quiche/quic/tools/quic_server_test.cc
+++ b/quiche/quic/tools/quic_server_test.cc
@@ -55,9 +55,11 @@
 
 class TestQuicServer : public QuicServer {
  public:
-  explicit TestQuicServer(QuicEventLoopFactory* event_loop_factory)
+  explicit TestQuicServer(QuicEventLoopFactory* event_loop_factory,
+                          QuicMemoryCacheBackend* quic_simple_server_backend)
       : QuicServer(crypto_test_utils::ProofSourceForTesting(),
-                   &quic_simple_server_backend_),
+                   quic_simple_server_backend),
+        quic_simple_server_backend_(quic_simple_server_backend),
         event_loop_factory_(event_loop_factory) {}
 
   ~TestQuicServer() override = default;
@@ -71,7 +73,7 @@
         std::make_unique<QuicDefaultConnectionHelper>(),
         std::unique_ptr<QuicCryptoServerStreamBase::Helper>(
             new QuicSimpleCryptoServerStreamHelper()),
-        event_loop()->CreateAlarmFactory(), &quic_simple_server_backend_);
+        event_loop()->CreateAlarmFactory(), quic_simple_server_backend_);
     return mock_dispatcher_;
   }
 
@@ -80,14 +82,15 @@
   }
 
   MockQuicSimpleDispatcher* mock_dispatcher_ = nullptr;
-  QuicMemoryCacheBackend quic_simple_server_backend_;
+  QuicMemoryCacheBackend* quic_simple_server_backend_;
   QuicEventLoopFactory* event_loop_factory_;
 };
 
 class QuicServerEpollInTest : public QuicTestWithParam<QuicEventLoopFactory*> {
  public:
   QuicServerEpollInTest()
-      : server_address_(TestLoopback(), 0), server_(GetParam()) {}
+      : server_address_(TestLoopback(), 0),
+        server_(GetParam(), &quic_simple_server_backend_) {}
 
   void StartListening() {
     server_.CreateUDPSocketAndListen(server_address_);
@@ -103,6 +106,7 @@
 
  protected:
   QuicSocketAddress server_address_;
+  QuicMemoryCacheBackend quic_simple_server_backend_;
   TestQuicServer server_;
 };