PM: Add a time provider.

This implements a time provider interface, as well as a real and a fake
implementation.

BUG=chromium:341205
TEST=Unit tests.

Change-Id: Ibc6a865ab868e0f8c760c003dc970b7987896a36
Reviewed-on: https://chromium-review.googlesource.com/190247
Tested-by: Gilad Arnold <garnold@chromium.org>
Reviewed-by: Alex Deymo <deymo@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
diff --git a/policy_manager/fake_state.cc b/policy_manager/fake_state.cc
index 977e9d3..19df440 100644
--- a/policy_manager/fake_state.cc
+++ b/policy_manager/fake_state.cc
@@ -5,12 +5,14 @@
 #include "update_engine/policy_manager/fake_random_provider.h"
 #include "update_engine/policy_manager/fake_shill_provider.h"
 #include "update_engine/policy_manager/fake_state.h"
+#include "update_engine/policy_manager/fake_time_provider.h"
 
 namespace chromeos_policy_manager {
 
 FakeState::FakeState() {
   set_random_provider(new FakeRandomProvider());
   set_shill_provider(new FakeShillProvider());
+  set_time_provider(new FakeTimeProvider());
 }
 
 }  // namespace chromeos_policy_manager