diff --git a/tests/chunks/pipeline-interests-aimd.t.cpp b/tests/chunks/pipeline-interests-aimd.t.cpp
index 0f18f70..d0d0bb0 100644
--- a/tests/chunks/pipeline-interests-aimd.t.cpp
+++ b/tests/chunks/pipeline-interests-aimd.t.cpp
@@ -71,23 +71,23 @@
     return pipelineOptions;
   }
 
-  static RttEstimator::Options
+  static shared_ptr<RttEstimatorWithStats::Options>
   makeRttEstimatorOptions()
   {
-    RttEstimator::Options rttOptions;
-    rttOptions.alpha = 0.125;
-    rttOptions.beta = 0.25;
-    rttOptions.k = 4;
-    rttOptions.initialRto = 1_s;
-    rttOptions.minRto = 200_ms;
-    rttOptions.maxRto = 4_s;
-    rttOptions.rtoBackoffMultiplier = 2;
+    auto rttOptions = make_shared<RttEstimatorWithStats::Options>();
+    rttOptions->alpha = 0.125;
+    rttOptions->beta = 0.25;
+    rttOptions->k = 4;
+    rttOptions->initialRto = 1_s;
+    rttOptions->minRto = 200_ms;
+    rttOptions->maxRto = 4_s;
+    rttOptions->rtoBackoffMultiplier = 2;
     return rttOptions;
   }
 
 protected:
   PipelineInterestsAdaptive::Options opt;
-  RttEstimator rttEstimator;
+  RttEstimatorWithStats rttEstimator;
   PipelineInterestsAdaptive* pipeline;
   static constexpr double MARGIN = 0.001;
 };
diff --git a/tests/chunks/pipeline-interests-cubic.t.cpp b/tests/chunks/pipeline-interests-cubic.t.cpp
index 03e3f9d..0d2edf0 100644
--- a/tests/chunks/pipeline-interests-cubic.t.cpp
+++ b/tests/chunks/pipeline-interests-cubic.t.cpp
@@ -73,23 +73,23 @@
     return pipelineOptions;
   }
 
-  static RttEstimator::Options
+  static shared_ptr<RttEstimatorWithStats::Options>
   makeRttEstimatorOptions()
   {
-    RttEstimator::Options rttOptions;
-    rttOptions.alpha = 0.125;
-    rttOptions.beta = 0.25;
-    rttOptions.k = 8;
-    rttOptions.initialRto = 1_s;
-    rttOptions.minRto = 200_ms;
-    rttOptions.maxRto = 4_s;
-    rttOptions.rtoBackoffMultiplier = 2;
+    auto rttOptions = make_shared<RttEstimatorWithStats::Options>();
+    rttOptions->alpha = 0.125;
+    rttOptions->beta = 0.25;
+    rttOptions->k = 8;
+    rttOptions->initialRto = 1_s;
+    rttOptions->minRto = 200_ms;
+    rttOptions->maxRto = 4_s;
+    rttOptions->rtoBackoffMultiplier = 2;
     return rttOptions;
   }
 
 protected:
   PipelineInterestsCubic::Options opt;
-  RttEstimator rttEstimator;
+  RttEstimatorWithStats rttEstimator;
   PipelineInterestsCubic* pipeline;
   static constexpr double MARGIN = 0.001;
 };
