diff --git a/fake_p2p_manager_configuration.h b/fake_p2p_manager_configuration.h
index 3d3afe4..2f05ba3 100644
--- a/fake_p2p_manager_configuration.h
+++ b/fake_p2p_manager_configuration.h
@@ -63,8 +63,9 @@
     // Replace {variable} on the passed string.
     std::string str_minimum_size = std::to_string(minimum_size);
     for (std::string& arg : formatted_command) {
-      ReplaceSubstringsAfterOffset(&arg, 0, "{file_id}", file_id);
-      ReplaceSubstringsAfterOffset(&arg, 0, "{minsize}", str_minimum_size);
+      base::ReplaceSubstringsAfterOffset(&arg, 0, "{file_id}", file_id);
+      base::ReplaceSubstringsAfterOffset(&arg, 0, "{minsize}",
+                                         str_minimum_size);
     }
     return formatted_command;
   }
diff --git a/omaha_request_action_unittest.cc b/omaha_request_action_unittest.cc
index e5cc7e2..81a7378 100644
--- a/omaha_request_action_unittest.cc
+++ b/omaha_request_action_unittest.cc
@@ -292,6 +292,10 @@
     return "OutputObjectCollectorAction";
   }
   string Type() const { return StaticType(); }
+  using InputObjectType =
+      ActionTraits<OutputObjectCollectorAction>::InputObjectType;
+  using OutputObjectType =
+      ActionTraits<OutputObjectCollectorAction>::OutputObjectType;
   bool has_input_object_;
   OmahaResponse omaha_response_;
 };
