diff --git a/src/test/java/com/google/devtools/build/skyframe/EagerInvalidatorTest.java b/src/test/java/com/google/devtools/build/skyframe/EagerInvalidatorTest.java
index aa9b036..809277e 100644
--- a/src/test/java/com/google/devtools/build/skyframe/EagerInvalidatorTest.java
+++ b/src/test/java/com/google/devtools/build/skyframe/EagerInvalidatorTest.java
@@ -183,6 +183,11 @@
       }
 
       @Override
+      public void computed(SkyKey skyKey, long elapsedTimeNanos) {
+        throw new UnsupportedOperationException();
+      }
+
+      @Override
       public void evaluated(SkyKey skyKey, Supplier<SkyValue> skyValueSupplier,
           EvaluationState state) {
         throw new UnsupportedOperationException();
@@ -220,6 +225,11 @@
       }
 
       @Override
+      public void computed(SkyKey skyKey, long elapsedTimeNanos) {
+        throw new UnsupportedOperationException();
+      }
+
+      @Override
       public void evaluated(SkyKey skyKey, Supplier<SkyValue> skyValueSupplier,
           EvaluationState state) {
         throw new UnsupportedOperationException();
@@ -259,6 +269,11 @@
       }
 
       @Override
+      public void computed(SkyKey skyKey, long elapsedTimeNanos) {
+        throw new UnsupportedOperationException();
+      }
+
+      @Override
       public void evaluated(SkyKey skyKey, Supplier<SkyValue> skyValueSupplier,
           EvaluationState state) {
         throw new UnsupportedOperationException();
@@ -370,6 +385,11 @@
       }
 
       @Override
+      public void computed(SkyKey skyKey, long elapsedTimeNanos) {
+        throw new UnsupportedOperationException();
+      }
+
+      @Override
       public void evaluated(SkyKey skyKey, Supplier<SkyValue> skyValueSupplier,
           EvaluationState state) {
         throw new UnsupportedOperationException();
@@ -399,6 +419,11 @@
       }
 
       @Override
+      public void computed(SkyKey skyKey, long elapsedTimeNanos) {
+        throw new UnsupportedOperationException();
+      }
+
+      @Override
       public void evaluated(SkyKey skyKey, Supplier<SkyValue> skyValueSupplier,
           EvaluationState state) {
         throw new UnsupportedOperationException();
@@ -495,6 +520,11 @@
             }
 
             @Override
+            public void computed(SkyKey skyKey, long elapsedTimeNanos) {
+              throw new UnsupportedOperationException();
+            }
+
+            @Override
             public void evaluated(
                 SkyKey skyKey, Supplier<SkyValue> skyValueSupplier, EvaluationState state) {
               throw new UnsupportedOperationException();
diff --git a/src/test/java/com/google/devtools/build/skyframe/ParallelEvaluatorTest.java b/src/test/java/com/google/devtools/build/skyframe/ParallelEvaluatorTest.java
index 4ca6550..3969dfa 100644
--- a/src/test/java/com/google/devtools/build/skyframe/ParallelEvaluatorTest.java
+++ b/src/test/java/com/google/devtools/build/skyframe/ParallelEvaluatorTest.java
@@ -262,6 +262,9 @@
       public void enqueueing(SkyKey key) {}
 
       @Override
+      public void computed(SkyKey skyKey, long elapsedTimeNanos) {}
+
+      @Override
       public void evaluated(SkyKey skyKey, Supplier<SkyValue> skyValueSupplier,
           EvaluationState state) {
         receivedValues.add(skyKey);
@@ -1906,6 +1909,9 @@
       }
 
       @Override
+      public void computed(SkyKey skyKey, long elapsedTimeNanos) {}
+
+      @Override
       public void evaluated(SkyKey skyKey, Supplier<SkyValue> skyValueSupplier,
           EvaluationState state) {
         evaluatedValues.add(skyKey);
diff --git a/src/test/java/com/google/devtools/build/skyframe/TrackingInvalidationReceiver.java b/src/test/java/com/google/devtools/build/skyframe/TrackingInvalidationReceiver.java
index 090f04a..2346550 100644
--- a/src/test/java/com/google/devtools/build/skyframe/TrackingInvalidationReceiver.java
+++ b/src/test/java/com/google/devtools/build/skyframe/TrackingInvalidationReceiver.java
@@ -50,6 +50,9 @@
   }
 
   @Override
+  public void computed(SkyKey skyKey, long elapsedTimeNanos) {}
+
+  @Override
   public void evaluated(SkyKey skyKey, Supplier<SkyValue> skyValueSupplier, EvaluationState state) {
     evaluated.add(skyKey);
     if (skyValueSupplier.get() != null) {
