PM: Add an update engine provider.
The UpdaterProvider exports variables for querying the status of an
update process and related settings. Includes a concrete implementation
(RealUpdaterProvider), which currently links directly with update engine
code and pulls information through the SystemState object. Also
included is a fake implementation (FakeUpdaterProvider) for testing
purposes.
BUG=chromium:346914
TEST=Unit tests.
Change-Id: I6ed5b40f21e43537e78aebf4217d811e149f745b
Reviewed-on: https://chromium-review.googlesource.com/192232
Reviewed-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
diff --git a/policy_manager/fake_state.cc b/policy_manager/fake_state.cc
index 4f4c787..0f0b5f1 100644
--- a/policy_manager/fake_state.cc
+++ b/policy_manager/fake_state.cc
@@ -11,7 +11,8 @@
FakeState::FakeState() : State(new FakeRandomProvider(),
new FakeShillProvider(),
new FakeSystemProvider(),
- new FakeTimeProvider()) {
+ new FakeTimeProvider(),
+ new FakeUpdaterProvider()) {
}
FakeState* FakeState::Construct() {
@@ -19,7 +20,8 @@
if (!(fake_state->random_provider()->Init() &&
fake_state->shill_provider()->Init() &&
fake_state->system_provider()->Init() &&
- fake_state->time_provider()->Init())) {
+ fake_state->time_provider()->Init() &&
+ fake_state->updater_provider()->Init())) {
return NULL;
}
return fake_state.release();