diff --git a/common/platform/api/quiche_test.h b/common/platform/api/quiche_test.h
index efec638..a8b1e05 100644
--- a/common/platform/api/quiche_test.h
+++ b/common/platform/api/quiche_test.h
@@ -12,6 +12,15 @@
 template <class T>
 using QuicheTestWithParam = quiche::test::QuicheTestWithParamImpl<T>;
 
+using QuicheFlagSaver = QuicheFlagSaverImpl;
+
+// Class which needs to be instantiated in tests which use threads.
+using ScopedEnvironmentForThreads = ScopedEnvironmentForThreadsImpl;
+
+inline std::string QuicheGetTestMemoryCachePath() {
+  return QuicheGetTestMemoryCachePathImpl();
+}
+
 namespace quiche {
 namespace test {
 
@@ -27,4 +36,9 @@
 #define EXPECT_QUICHE_DEBUG_DEATH(condition, message) \
   EXPECT_QUICHE_DEBUG_DEATH_IMPL(condition, message)
 
+#define QUICHE_TEST_DISABLED_IN_CHROME(name) \
+  QUICHE_TEST_DISABLED_IN_CHROME_IMPL(name)
+
+#define QUICHE_SLOW_TEST(test) QUICHE_SLOW_TEST_IMPL(test)
+
 #endif  // QUICHE_COMMON_PLATFORM_API_QUICHE_TEST_H_
diff --git a/quic/platform/api/quic_test.h b/quic/platform/api/quic_test.h
index 644c255..90228ee 100644
--- a/quic/platform/api/quic_test.h
+++ b/quic/platform/api/quic_test.h
@@ -6,26 +6,24 @@
 #define QUICHE_QUIC_PLATFORM_API_QUIC_TEST_H_
 
 #include "quic/platform/api/quic_logging.h"
-#include "net/quic/platform/impl/quic_test_impl.h"
 #include "common/platform/api/quiche_test.h"
 
-using QuicFlagSaver = QuicFlagSaverImpl;
+using QuicFlagSaver = QuicheFlagSaver;
 
 // Defines the base classes to be used in QUIC tests.
-using QuicTest = QuicTestImpl;
+using QuicTest = QuicheTest;
 template <class T>
-using QuicTestWithParam = QuicTestWithParamImpl<T>;
+using QuicTestWithParam = QuicheTestWithParam<T>;
 
 // Class which needs to be instantiated in tests which use threads.
 using ScopedEnvironmentForThreads = ScopedEnvironmentForThreadsImpl;
 
-#define QUIC_TEST_DISABLED_IN_CHROME(name) \
-  QUIC_TEST_DISABLED_IN_CHROME_IMPL(name)
+#define QUIC_TEST_DISABLED_IN_CHROME(name) QUICHE_TEST_DISABLED_IN_CHROME(name)
 
 inline std::string QuicGetTestMemoryCachePath() {
-  return QuicGetTestMemoryCachePathImpl();
+  return QuicheGetTestMemoryCachePath();
 }
 
-#define QUIC_SLOW_TEST(test) QUIC_SLOW_TEST_IMPL(test)
+#define QUIC_SLOW_TEST(test) QUICHE_SLOW_TEST(test)
 
 #endif  // QUICHE_QUIC_PLATFORM_API_QUIC_TEST_H_
