// // Copyright (C) 2014 The Android Open Source Project // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // #ifndef UPDATE_ENGINE_UPDATE_MANAGER_FAKE_UPDATER_PROVIDER_H_ #define UPDATE_ENGINE_UPDATE_MANAGER_FAKE_UPDATER_PROVIDER_H_ #include <string> #include "update_engine/update_manager/fake_variable.h" #include "update_engine/update_manager/updater_provider.h" namespace chromeos_update_manager { // Fake implementation of the UpdaterProvider base class. class FakeUpdaterProvider : public UpdaterProvider { public: FakeUpdaterProvider() {} FakeVariable<base::Time>* var_updater_started_time() override { return &var_updater_started_time_; } FakeVariable<base::Time>* var_last_checked_time() override { return &var_last_checked_time_; } FakeVariable<base::Time>* var_update_completed_time() override { return &var_update_completed_time_; } FakeVariable<double>* var_progress() override { return &var_progress_; } FakeVariable<Stage>* var_stage() override { return &var_stage_; } FakeVariable<std::string>* var_new_version() override { return &var_new_version_; } FakeVariable<int64_t>* var_payload_size() override { return &var_payload_size_; } FakeVariable<std::string>* var_curr_channel() override { return &var_curr_channel_; } FakeVariable<std::string>* var_new_channel() override { return &var_new_channel_; } FakeVariable<bool>* var_p2p_enabled() override { return &var_p2p_enabled_; } FakeVariable<bool>* var_cellular_enabled() override { return &var_cellular_enabled_; } FakeVariable<unsigned int>* var_consecutive_failed_update_checks() override { return &var_consecutive_failed_update_checks_; } FakeVariable<unsigned int>* var_server_dictated_poll_interval() override { return &var_server_dictated_poll_interval_; } FakeVariable<UpdateRequestStatus>* var_forced_update_requested() override { return &var_forced_update_requested_; } private: FakeVariable<base::Time> var_updater_started_time_{ // NOLINT(whitespace/braces) "updater_started_time", kVariableModePoll}; FakeVariable<base::Time> var_last_checked_time_{ // NOLINT(whitespace/braces) "last_checked_time", kVariableModePoll}; FakeVariable<base::Time> var_update_completed_time_{ // NOLINT(whitespace/braces) "update_completed_time", kVariableModePoll}; FakeVariable<double> var_progress_{ // NOLINT(whitespace/braces) "progress", kVariableModePoll}; FakeVariable<Stage> var_stage_{ // NOLINT(whitespace/braces) "stage", kVariableModePoll}; FakeVariable<std::string> var_new_version_{ // NOLINT(whitespace/braces) "new_version", kVariableModePoll}; FakeVariable<int64_t> var_payload_size_{ // NOLINT(whitespace/braces) "payload_size", kVariableModePoll}; FakeVariable<std::string> var_curr_channel_{ // NOLINT(whitespace/braces) "curr_channel", kVariableModePoll}; FakeVariable<std::string> var_new_channel_{ // NOLINT(whitespace/braces) "new_channel", kVariableModePoll}; FakeVariable<bool> var_p2p_enabled_{// NOLINT(whitespace/braces) "p2p_enabled", kVariableModeAsync}; FakeVariable<bool> var_cellular_enabled_{// NOLINT(whitespace/braces) "cellular_enabled", kVariableModeAsync}; FakeVariable<unsigned int> var_consecutive_failed_update_checks_{ // NOLINT(whitespace/braces) "consecutive_failed_update_checks", kVariableModePoll}; FakeVariable<unsigned int> var_server_dictated_poll_interval_{ // NOLINT(whitespace/braces) "server_dictated_poll_interval", kVariableModePoll}; FakeVariable<UpdateRequestStatus> var_forced_update_requested_{ // NOLINT(whitespace/braces) "forced_update_requested", kVariableModeAsync}; DISALLOW_COPY_AND_ASSIGN(FakeUpdaterProvider); }; } // namespace chromeos_update_manager #endif // UPDATE_ENGINE_UPDATE_MANAGER_FAKE_UPDATER_PROVIDER_H_