PolicyManager: New System provider.
The system provider exposes information about the device from
crossystem and the kernel boot command line options.
BUG=chromium:338587
TEST=Unit tests.
Change-Id: I2837a97740b63562155717cfe6a12fad69fd8cea
Reviewed-on: https://chromium-review.googlesource.com/191121
Reviewed-by: Alex Deymo <deymo@chromium.org>
Tested-by: Alex Deymo <deymo@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
diff --git a/policy_manager/real_state_unittest.cc b/policy_manager/real_state_unittest.cc
index 0362688..792d4d8 100644
--- a/policy_manager/real_state_unittest.cc
+++ b/policy_manager/real_state_unittest.cc
@@ -2,18 +2,22 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include "update_engine/policy_manager/real_state.h"
+
#include <gtest/gtest.h>
#include "update_engine/policy_manager/fake_random_provider.h"
#include "update_engine/policy_manager/fake_shill_provider.h"
+#include "update_engine/policy_manager/fake_system_provider.h"
#include "update_engine/policy_manager/fake_time_provider.h"
-#include "update_engine/policy_manager/real_state.h"
#include "update_engine/policy_manager/pmtest_utils.h"
namespace chromeos_policy_manager {
TEST(PmRealStateTest, InitTest) {
- RealState state(new FakeRandomProvider(), new FakeShillProvider(),
+ RealState state(new FakeRandomProvider(),
+ new FakeShillProvider(),
+ new FakeSystemProvider(),
new FakeTimeProvider());
EXPECT_TRUE(state.Init());
@@ -24,6 +28,8 @@
PMTEST_EXPECT_NOT_NULL(state.random_provider()->var_seed());
PMTEST_ASSERT_NOT_NULL(state.shill_provider());
PMTEST_EXPECT_NOT_NULL(state.shill_provider()->var_is_connected());
+ PMTEST_ASSERT_NOT_NULL(state.system_provider());
+ PMTEST_ASSERT_NOT_NULL(state.system_provider()->var_is_normal_boot_mode());
PMTEST_ASSERT_NOT_NULL(state.time_provider());
PMTEST_ASSERT_NOT_NULL(state.time_provider()->var_curr_date());
}