UpdateManager: Do not schedule update checks if booted from removable device.
This abides by the current logic, as found in
UpdateCheckScheduler::Run(). New unit test added to verify this
behavior.
BUG=chromium:358269
TEST=Unit tests.
Change-Id: I5720b2b3c85c7de7f64eec4f7da000d3e13c778d
Reviewed-on: https://chromium-review.googlesource.com/207230
Reviewed-by: Alex Deymo <deymo@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
diff --git a/update_manager/fake_system_provider.h b/update_manager/fake_system_provider.h
index a05f630..47cd5ac 100644
--- a/update_manager/fake_system_provider.h
+++ b/update_manager/fake_system_provider.h
@@ -27,13 +27,20 @@
return &var_is_oobe_complete_;
}
+ virtual FakeVariable<bool>* var_is_boot_device_removable() override {
+ return &var_is_boot_device_removable_;
+ }
+
private:
- FakeVariable<bool> var_is_normal_boot_mode_{
- "is_normal_boot_mode", kVariableModeConst};
- FakeVariable<bool> var_is_official_build_{
- "is_official_build", kVariableModeConst};
- FakeVariable<bool> var_is_oobe_complete_{
- "is_oobe_complete", kVariableModePoll};
+ FakeVariable<bool> var_is_normal_boot_mode_{ // NOLINT(whitespace/braces)
+ "is_normal_boot_mode", kVariableModeConst};
+ FakeVariable<bool> var_is_official_build_{ // NOLINT(whitespace/braces)
+ "is_official_build", kVariableModeConst};
+ FakeVariable<bool> var_is_oobe_complete_{ // NOLINT(whitespace/braces)
+ "is_oobe_complete", kVariableModePoll};
+ FakeVariable<bool>
+ var_is_boot_device_removable_{ // NOLINT(whitespace/braces)
+ "is_boot_device_removable", kVariableModePoll};
DISALLOW_COPY_AND_ASSIGN(FakeSystemProvider);
};